works.iterative.tapir

Members list

Type members

Classlikes

Create effectful methods to perform the endpoint operation.

Create effectful methods to perform the endpoint operation.

The factory takes an endpoint with correct type signature, and returns a function that can call the endpoint.

The resulting error channel is whatever the endpoint declares as the client error channel, eg. the type E of ApiError[E], which is what is reported in RequestFailure[E].

The other options - AuthenticationFailure, ServerFailure - are converted to defects to be handled at another level.

This way the client can deal only with what it can actually do something about.

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
Known subtypes

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
sealed trait ApiError[+ClientError]

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class AuthFailure
class RequestFailure[ClientError]
object ApiError

Attributes

Companion
trait
Supertypes
trait Sum
trait Mirror
class Object
trait Matchable
class Any
Self type
ApiError.type
final case class ApiKeyConfig(apiKeys: Map[String, String])

Attributes

Companion
object
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object ApiKeyConfig

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
trait ApiKeyGuard

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
Known subtypes
object ApiKeyGuard

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type

Attributes

Supertypes
class Object
trait Matchable
class Any
class AuthenticatedApiClientFactory(authentication: AuthenticationService, clientFactory: ClientEndpointFactory) extends ApiClientFactory

Attributes

Supertypes
class Object
trait Matchable
class Any
case class BaseUri(value: Option[Uri])

Attributes

Companion
object
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Show all
Self type
BaseUri.type
trait BaseUriExtractor[-O]

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
Known subtypes

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
object BaseUri

Create effectful methods to perform the endpoint operation

Create effectful methods to perform the endpoint operation

Just a useful way to have something that will derive the client from the endpoint using other layers, like BaseUri and provided STTP Backend.

The resulting type is either

  • S => I => IO[E, O] if the endpoint is secure and error prone
  • S => I => UIO[O] if the endpoint is secure and infallible
  • I => IO[E, O] if the endpoint is public and error prone
  • I => UIO[O] if the endpoint is public and infallible

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
Known subtypes

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
trait ClientResultConstructor[S, I, E, O]

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
trait CustomTapir extends Tapir, TapirJsonZio, TapirAliases, CustomTapirPlatformSpecific

Attributes

Companion
object
Supertypes
trait SttpClientInterpreter
trait SttpClientInterpreterExtensions
trait ZTapir
trait TapirAliases
trait TapirJsonZio
trait Tapir
trait ModifyMacroSupport
trait ModifyMacroFunctorSupport
trait TapirStaticContentEndpoints
trait TapirComputedInputs
trait TapirExtensions
class Object
trait Matchable
class Any
Show all
Known subtypes
object CustomTapir extends CustomTapir

Attributes

Companion
trait
Supertypes
trait CustomTapir
trait SttpClientInterpreter
trait SttpClientInterpreterExtensions
trait ZTapir
trait TapirAliases
trait TapirJsonZio
trait Tapir
trait ModifyMacroSupport
trait ModifyMacroFunctorSupport
trait TapirStaticContentEndpoints
trait TapirComputedInputs
trait TapirExtensions
class Object
trait Matchable
class Any
Show all
Self type
trait CustomTapirPlatformSpecific extends ZTapir, SttpClientInterpreter

Attributes

Supertypes
trait SttpClientInterpreter
trait SttpClientInterpreterExtensions
trait ZTapir
class Object
trait Matchable
class Any
Show all
Known subtypes
Self type
trait Http4sCustomTapir[Env] extends CustomTapir, ZHttp4sServerInterpreter[Env]

Attributes

Supertypes
trait ZHttp4sServerInterpreter[Env]
trait CustomTapir
trait SttpClientInterpreter
trait SttpClientInterpreterExtensions
trait ZTapir
trait TapirAliases
trait TapirJsonZio
trait Tapir
trait ModifyMacroSupport
trait ModifyMacroFunctorSupport
trait TapirStaticContentEndpoints
trait TapirComputedInputs
trait TapirExtensions
class Object
trait Matchable
class Any
Show all
class LiveApiKeyGuard(config: ApiKeyConfig) extends ApiKeyGuard

Attributes

Companion
object
Supertypes
trait ApiKeyGuard
class Object
trait Matchable
class Any

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type

Attributes

Companion
object
Supertypes
trait CustomTapir
trait SttpClientInterpreter
trait SttpClientInterpreterExtensions
trait ZTapir
trait TapirAliases
trait TapirJsonZio
trait Tapir
trait ModifyMacroSupport
trait ModifyMacroFunctorSupport
trait TapirStaticContentEndpoints
trait TapirComputedInputs
trait TapirExtensions
class Object
trait Matchable
class Any
Show all

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
class ReconectingUpdateSource[A](updateHub: Hub[A], retrySchedule: Schedule[Any, Any, _] = ...)

Run a read-only source from server, publish whatever comes to a hub. Reconnect on failure.

Run a read-only source from server, publish whatever comes to a hub. Reconnect on failure.

Type parameters

A

type of updates

Value parameters

retrySchedule

schedule for retries, defaults to 2 seconds

updateHub

hub to publish updates to

Attributes

Supertypes
class Object
trait Matchable
class Any

Types

type ApiEndpoint[E, I, O] = Endpoint[AccessToken, I, ApiError[E], O, ZioStreams]