trait Assets extends algebra.Assets with Endpoints

Linear Supertypes
Endpoints, BuiltInErrors, EndpointsWithCustomErrors, Responses, StatusCodes, Requests, Urls, Methods, algebra.Endpoints, algebra.BuiltInErrors, algebra.Assets, algebra.EndpointsWithCustomErrors, Errors, algebra.Responses, algebra.StatusCodes, algebra.Requests, endpoints.SemigroupalSyntax, algebra.Methods, algebra.Urls, endpoints.PartialInvariantFunctorSyntax, endpoints.InvariantFunctorSyntax, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Assets
  2. Endpoints
  3. BuiltInErrors
  4. EndpointsWithCustomErrors
  5. Responses
  6. StatusCodes
  7. Requests
  8. Urls
  9. Methods
  10. Endpoints
  11. BuiltInErrors
  12. Assets
  13. EndpointsWithCustomErrors
  14. Errors
  15. Responses
  16. StatusCodes
  17. Requests
  18. SemigroupalSyntax
  19. Methods
  20. Urls
  21. PartialInvariantFunctorSyntax
  22. InvariantFunctorSyntax
  23. AnyRef
  24. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Type Members

  1. case class AssetPath(path: Seq[String], name: String) extends Product with Serializable
  2. case class AssetRequest(assetPath: AssetPath, request: uzhttp.Request) extends Product with Serializable
  3. type AssetResponse = ZIO[Blocking, Throwable, uzhttp.Response]
    Definition Classes
    Assets → Assets
  4. case class CallbackDocs extends Product with Serializable
    Definition Classes
    EndpointsWithCustomErrors
  5. type CallbacksDocs = Map[String, CallbackDocs]
    Definition Classes
    EndpointsWithCustomErrors
  6. type ClientErrors = Invalid
    Definition Classes
    BuiltInErrors → Errors
  7. case class EndpointDocs extends Product with Serializable
    Definition Classes
    EndpointsWithCustomErrors
  8. implicit class InvariantFunctorSyntax[A, F[_]] extends AnyRef
    Definition Classes
    InvariantFunctorSyntax
  9. type Method = uzhttp.Request.Method
    Definition Classes
    Methods → Methods
  10. type Params = Map[String, Seq[String]]
    Definition Classes
    Urls
  11. implicit class PartialInvariantFunctorSyntax[A, F[_]] extends AnyRef
    Definition Classes
    PartialInvariantFunctorSyntax
  12. implicit class PathOps[A] extends AnyRef
    Definition Classes
    Urls
  13. type QueryString[A] = (Params) => Validated[A]
    Definition Classes
    Urls → Urls
  14. implicit class QueryStringSyntax[A] extends AnyRef
    Definition Classes
    Urls
  15. type Request[A] = (uzhttp.Request) => Option[UIO[Validated[A]]]

    An HTTP request.

    An HTTP request.

    It receives uzhttp.Request and returns: - None if request url cannot be matched - Some(Valid(a)) if A can be extracted from request - Invalid if A cannot be extracted from request

    Has an instance of InvariantFunctor.

    Definition Classes
    Requests → Requests
  16. type RequestEntity[A] = (uzhttp.Request) => UIO[Validated[A]]

    Information carried by request entity.

    Information carried by request entity. It is modeled as UIO[Validate[A]] because it is result of collecting data from stream chunk. If any error happens during collecting data or collected data cannot be transformed to wanted information we store error in Invalid data structure which is later transformed to Bad Request response.

    Definition Classes
    Requests → Requests
  17. type RequestHeaders[A] = (Map[String, String]) => Validated[A]

    An attempt to extract an A from a request headers.

    An attempt to extract an A from a request headers.

    Models failure by returning a Left(result). That makes it possible to early return an HTTP response if a header is wrong (e.g. if an authentication information is missing)

    Definition Classes
    Requests → Requests
  18. type Response[A] = (A) => RIO[Blocking, uzhttp.Response]

    An HTTP response (status, headers, and entity) carrying an information of type A

    An HTTP response (status, headers, and entity) carrying an information of type A

    Definition Classes
    Responses → Responses
    Note

    This type has implicit methods provided by the InvariantFunctorSyntax and ResponseSyntax class

  19. type ResponseEntity[A] = (A) => (Array[Byte], String)

    An HTTP response entity carrying an information of type A It is modeled as function that receives A and returns it value serialized to byte array together with content type.

    An HTTP response entity carrying an information of type A It is modeled as function that receives A and returns it value serialized to byte array together with content type.

    Definition Classes
    Responses → Responses
  20. type ResponseHeaders[A] = (A) => List[(String, String)]

    Information carried by responses’ headers.

    Information carried by responses’ headers.

    You can construct values of type ResponseHeaders by using the operations responseHeader, optResponseHeader, or emptyResponseHeaders.

    Definition Classes
    Responses → Responses
    Note

    This type has implicit methods provided by the SemigroupalSyntax and PartialInvariantFunctorSyntax classes.

  21. implicit class ResponseSyntax[A] extends AnyRef
    Definition Classes
    Responses
  22. implicit class SemigroupalSyntax[A, F[_]] extends AnyRef
    Definition Classes
    SemigroupalSyntax
  23. type ServerError = Throwable
    Definition Classes
    BuiltInErrors → Errors
  24. type StatusCode = Status
    Definition Classes
    StatusCodes → StatusCodes
  25. case class Endpoint[A, B](request: EndpointsWithCustomErrors.Request[A], response: EndpointsWithCustomErrors.Response[B]) extends Product with Serializable
    Definition Classes
    EndpointsWithCustomErrors
  26. trait Path[A] extends Url[A]
    Definition Classes
    Urls
  27. trait QueryStringParam[A] extends AnyRef
    Definition Classes
    Urls
  28. trait Segment[A] extends AnyRef
    Definition Classes
    Urls
  29. trait Url[A] extends AnyRef
    Definition Classes
    Urls

Abstract Value Members

  1. abstract def digests: Map[String, String]
    Definition Classes
    Assets

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def Accepted: uzhttp.Status.Accepted
    Definition Classes
    StatusCodes → StatusCodes
  5. def BadRequest: Status
    Definition Classes
    StatusCodes → StatusCodes
  6. def Created: uzhttp.Status.Created
    Definition Classes
    StatusCodes → StatusCodes
  7. def Delete: Method
    Definition Classes
    Methods → Methods
  8. def Forbidden: Status
    Definition Classes
    StatusCodes → StatusCodes
  9. def Get: Method
    Definition Classes
    Methods → Methods
  10. def InternalServerError: Status
    Definition Classes
    StatusCodes → StatusCodes
  11. def NoContent: Status
    Definition Classes
    StatusCodes → StatusCodes
  12. def NotFound: Status
    Definition Classes
    StatusCodes → StatusCodes
  13. def NotImplemented: Status
    Definition Classes
    StatusCodes → StatusCodes
  14. def OK: Ok
    Definition Classes
    StatusCodes → StatusCodes
  15. def Options: Method
    Definition Classes
    Methods → Methods
  16. def Patch: Method
    Definition Classes
    Methods → Methods
  17. def Post: Method
    Definition Classes
    Methods → Methods
  18. def Put: Method
    Definition Classes
    Methods → Methods
  19. def Unauthorized: Status
    Definition Classes
    StatusCodes → StatusCodes
  20. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  21. def assetResources(pathPrefix: Option[String] = None, cacheStrategy: CacheStrategy = CacheStrategy.Default, serveFromFilesystem: Boolean = false): (AssetRequest) => AssetResponse

    pathPrefix

    Prefix to use to look up the resources in the classpath. You most probably never want to publish all your classpath resources.

    cacheStrategy

    Strategy to use for constructing cache related response headers

    serveFromFilesystem

    Flag that determines if assets will be read from filesystem or classpath resources

    returns

    A function that, given an AssetRequest, builds an AssetResponse by looking for the requested asset in the classpath resources or anywhere on filesystem.

  22. def assetSegments(name: String, docs: Documentation): Path[AssetPath]
    Definition Classes
    Assets → Assets
  23. def assetsEndpoint(url: Url[AssetPath], docs: Documentation, notFoundDocs: Documentation): Endpoint[AssetRequest, AssetResponse]
    Definition Classes
    Assets → Assets
  24. final def badRequest[A, R](docs: Documentation, headers: ResponseHeaders[A])(implicit tupler: Tupler.Aux[ClientErrors, A, R]): Response[R]
    Definition Classes
    Responses
  25. implicit def booleanQueryString: QueryStringParam[Boolean]
    Definition Classes
    Urls
  26. def chainPaths[A, B](first: Path[A], second: Path[B])(implicit tupler: Tupler[A, B]): Path[Out]
    Definition Classes
    Urls → Urls
  27. def choiceResponse[A, B](responseA: Response[A], responseB: Response[B]): Response[Either[A, B]]
    Definition Classes
    Responses → Responses
  28. lazy val clientErrorsResponse: Response[ClientErrors]
    Definition Classes
    Errors
  29. def clientErrorsResponseEntity: (ClientErrors) => (Array[Byte], String)
    Definition Classes
    BuiltInErrors → BuiltInErrors → Errors
  30. final def clientErrorsToInvalid(clientErrors: ClientErrors): Invalid
    Definition Classes
    BuiltInErrors → Errors
  31. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  32. def combineQueryStrings[A, B](first: QueryString[A], second: QueryString[B])(implicit tupler: Tupler[A, B]): QueryString[Out]

    Concatenates two QueryStrings

    Concatenates two QueryStrings

    Definition Classes
    Urls → Urls
  33. final def delete[UrlP, HeadersP, Out](url: Url[UrlP], docs: Documentation, headers: RequestHeaders[HeadersP])(implicit tuplerUH: Tupler.Aux[UrlP, HeadersP, Out]): Request[Out]
    Definition Classes
    Requests
  34. implicit def doubleQueryString: QueryStringParam[Double]
    Definition Classes
    Urls
  35. implicit def doubleSegment: Segment[Double]
    Definition Classes
    Urls
  36. def emptyRequest: RequestEntity[Unit]
    Definition Classes
    Requests → Requests
  37. def emptyRequestHeaders: RequestHeaders[Unit]

    Always succeeds in extracting no information from the headers

    Always succeeds in extracting no information from the headers

    Definition Classes
    Requests → Requests
  38. def emptyResponse: ResponseEntity[Unit]
    Definition Classes
    Responses → Responses
  39. def emptyResponseHeaders: ResponseHeaders[Unit]
    Definition Classes
    Responses → Responses
  40. def endpoint[A, B](request: Request[A], response: Response[B], docs: EndpointDocs): Endpoint[A, B]
    Definition Classes
    EndpointsWithCustomErrors → EndpointsWithCustomErrors
  41. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  42. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  43. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  44. final def get[UrlP, HeadersP, Out](url: Url[UrlP], docs: Documentation, headers: RequestHeaders[HeadersP])(implicit tuplerUH: Tupler.Aux[UrlP, HeadersP, Out]): Request[Out]
    Definition Classes
    Requests
  45. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  46. def handleClientErrors(invalid: Invalid): RIO[Blocking, uzhttp.Response]

    This method is called by endpoints when decoding a request failed.

    This method is called by endpoints when decoding a request failed.

    The provided implementation calls clientErrorsResponse to construct a response containing the errors.

    This method can be overridden to customize the error reporting logic.

    Definition Classes
    EndpointsWithCustomErrors
  47. def handleServerError(throwable: Throwable): RIO[Blocking, uzhttp.Response]

    This method is called by endpoints when an exception is thrown during request processing.

    This method is called by endpoints when an exception is thrown during request processing.

    The provided implementation calls serverErrorResponse to construct a response containing the error message.

    This method can be overridden to customize the error reporting logic.

    Definition Classes
    EndpointsWithCustomErrors
  48. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  49. implicit def intQueryString: QueryStringParam[Int]
    Definition Classes
    Urls
  50. implicit def intSegment: Segment[Int]
    Definition Classes
    Urls
  51. final def internalServerError[A, R](docs: Documentation, headers: ResponseHeaders[A])(implicit tupler: Tupler.Aux[ServerError, A, R]): Response[R]
    Definition Classes
    Responses
  52. final def invalidToClientErrors(invalid: Invalid): ClientErrors
    Definition Classes
    BuiltInErrors → Errors
  53. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  54. implicit def longQueryString: QueryStringParam[Long]
    Definition Classes
    Urls
  55. implicit def longSegment: Segment[Long]
    Definition Classes
    Urls
  56. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  57. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  58. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  59. final def ok[A, B, R](entity: ResponseEntity[A], docs: Documentation, headers: ResponseHeaders[B])(implicit tupler: Tupler.Aux[A, B, R]): Response[R]
    Definition Classes
    Responses
  60. def optRequestHeader(name: String, docs: Documentation = None): RequestHeaders[Option[String]]
    Definition Classes
    Requests → Requests
  61. def optResponseHeader(name: String, docs: Documentation = None): ResponseHeaders[Option[String]]

    Response headers optionally containing a header with the given name.

    Response headers optionally containing a header with the given name. Client interpreters should model the header value as Some[String], or None if the response header is missing. Server interpreters should produce such a response header. Documentation interpreters should document this header.

    Definition Classes
    Responses → Responses
  62. implicit def optionalQueryStringParam[A](implicit param: QueryStringParam[A]): QueryStringParam[Option[A]]
    Definition Classes
    Urls → Urls
  63. final def patch[UrlP, BodyP, HeadersP, UrlAndBodyPTupled, Out](url: Url[UrlP], entity: RequestEntity[BodyP], docs: Documentation, headers: RequestHeaders[HeadersP])(implicit tuplerUB: Tupler.Aux[UrlP, BodyP, UrlAndBodyPTupled], tuplerUBH: Tupler.Aux[UrlAndBodyPTupled, HeadersP, Out]): Request[Out]
    Definition Classes
    Requests
  64. val path: Path[Unit]
    Definition Classes
    Urls
  65. implicit def pathPartialInvariantFunctor: PartialInvariantFunctor[Path]
    Definition Classes
    Urls → Urls
  66. final def post[UrlP, BodyP, HeadersP, UrlAndBodyPTupled, Out](url: Url[UrlP], entity: RequestEntity[BodyP], docs: Documentation, headers: RequestHeaders[HeadersP])(implicit tuplerUB: Tupler.Aux[UrlP, BodyP, UrlAndBodyPTupled], tuplerUBH: Tupler.Aux[UrlAndBodyPTupled, HeadersP, Out]): Request[Out]
    Definition Classes
    Requests
  67. final def put[UrlP, BodyP, HeadersP, UrlAndBodyPTupled, Out](url: Url[UrlP], entity: RequestEntity[BodyP], docs: Documentation, headers: RequestHeaders[HeadersP])(implicit tuplerUB: Tupler.Aux[UrlP, BodyP, UrlAndBodyPTupled], tuplerUBH: Tupler.Aux[UrlAndBodyPTupled, HeadersP, Out]): Request[Out]
    Definition Classes
    Requests
  68. def qs[A](name: String, docs: Documentation)(implicit value: QueryStringParam[A]): (Params) => Validated[A]
    Definition Classes
    Urls → Urls
  69. implicit lazy val queryStringParamPartialInvariantFunctor: PartialInvariantFunctor[QueryStringParam]
    Definition Classes
    Urls → Urls
  70. implicit def queryStringPartialInvariantFunctor: PartialInvariantFunctor[QueryString]
    Definition Classes
    Urls → Urls
  71. def remainingSegments(name: String = "", docs: Documentation = None): Path[String]
    Definition Classes
    Urls → Urls
  72. implicit def repeatedQueryStringParam[A, CC[X] <: Iterable[X]](implicit param: QueryStringParam[A], factory: Factory[A, CC[A]]): QueryStringParam[CC[A]]
    Definition Classes
    Urls → Urls
  73. def request[UrlP, BodyP, HeadersP, UrlAndBodyPTupled, Out](method: Method, url: Url[UrlP], entity: RequestEntity[BodyP] = emptyRequest, docs: Documentation = None, headers: RequestHeaders[HeadersP] = emptyRequestHeaders)(implicit tuplerUB: Tupler.Aux[UrlP, BodyP, UrlAndBodyPTupled], tuplerUBH: Tupler.Aux[UrlAndBodyPTupled, HeadersP, Out]): Request[Out]
    Definition Classes
    Requests → Requests
  74. implicit def requestEntityPartialInvariantFunctor: PartialInvariantFunctor[RequestEntity]
    Definition Classes
    Requests → Requests
  75. def requestHeader(name: String, docs: Documentation = None): RequestHeaders[String]
    Definition Classes
    Requests → Requests
  76. implicit lazy val requestHeadersPartialInvariantFunctor: PartialInvariantFunctor[RequestHeaders]
    Definition Classes
    Requests → Requests
  77. implicit lazy val requestHeadersSemigroupal: Semigroupal[RequestHeaders]
    Definition Classes
    Requests → Requests
  78. implicit def requestPartialInvariantFunctor: PartialInvariantFunctor[Request]
    Definition Classes
    Requests → Requests
  79. def response[A, B, R](statusCode: StatusCode, entity: ResponseEntity[A], docs: Documentation, headers: ResponseHeaders[B])(implicit tupler: Tupler.Aux[A, B, R]): Response[R]

    Server interpreters construct a response with the given status and entity.

    Server interpreters construct a response with the given status and entity. Client interpreters accept a response only if it has a corresponding status code.

    statusCode

    Response status code

    entity

    Response entity

    docs

    Response documentation

    headers

    Response headers

    Definition Classes
    Responses → Responses
  80. implicit lazy val responseEntityInvariantFunctor: InvariantFunctor[ResponseEntity]
    Definition Classes
    Responses → Responses
  81. def responseHeader(name: String, docs: Documentation = None): ResponseHeaders[String]

    Response headers containing a header with the given name.

    Response headers containing a header with the given name. Client interpreters should model the header value as String, or fail if the response header is missing. Server interpreters should produce such a response header. Documentation interpreters should document this header.

    Example:

    val versionedResource: Endpoint[Unit, (SomeResource, String)] =
      endpoint(
        get(path / "versioned-resource"),
        ok(
          jsonResponse[SomeResource],
          headers = responseHeader("ETag")
        )
      )
    Definition Classes
    Responses → Responses
  82. implicit lazy val responseHeadersInvariantFunctor: PartialInvariantFunctor[ResponseHeaders]
    Definition Classes
    Responses → Responses
  83. implicit lazy val responseHeadersSemigroupal: Semigroupal[ResponseHeaders]
    Definition Classes
    Responses → Responses
  84. implicit lazy val responseInvariantFunctor: InvariantFunctor[Response]
    Definition Classes
    Responses → Responses
  85. def segment[A](name: String = "", docs: Documentation = None)(implicit A: Segment[A]): Path[A]
    Definition Classes
    Urls → Urls
  86. implicit lazy val segmentPartialInvariantFunctor: PartialInvariantFunctor[Segment]
    Definition Classes
    Urls → Urls
  87. lazy val serverErrorResponse: Response[ServerError]
    Definition Classes
    Errors
  88. def serverErrorResponseEntity: (ServerError) => (Array[Byte], String)
    Definition Classes
    BuiltInErrors → BuiltInErrors → Errors
  89. final def serverErrorToThrowable(serverError: ServerError): Throwable
    Definition Classes
    BuiltInErrors → Errors
  90. def staticPathSegment(segment: String): Path[Unit]
    Definition Classes
    Urls → Urls
  91. implicit def stringQueryString: QueryStringParam[String]
    Definition Classes
    Urls → Urls
  92. implicit val stringSegment: Segment[String]
    Definition Classes
    Urls → Urls
  93. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  94. def textRequest: RequestEntity[String]
    Definition Classes
    Requests → Requests
  95. def textResponse: ResponseEntity[String]
    Definition Classes
    Responses → Responses
  96. final def throwableToServerError(throwable: Throwable): ServerError
    Definition Classes
    BuiltInErrors → Errors
  97. def toString(): String
    Definition Classes
    AnyRef → Any
  98. implicit def urlPartialInvariantFunctor: PartialInvariantFunctor[Url]
    Definition Classes
    Urls → Urls
  99. def urlWithQueryString[A, B](path: Path[A], qs: QueryString[B])(implicit tupler: Tupler[A, B]): Url[Out]

    Builds an URL from the given path and query string

    Builds an URL from the given path and query string

    Definition Classes
    Urls → Urls
  100. val utf8Name: String
    Definition Classes
    Urls
  101. implicit def uuidQueryString: QueryStringParam[UUID]
    Definition Classes
    Urls
  102. implicit def uuidSegment: Segment[UUID]
    Definition Classes
    Urls
  103. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  104. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  105. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  106. final def wheneverFound[A](responseA: Response[A], notFoundDocs: Documentation): Response[Option[A]]
    Definition Classes
    Responses

Inherited from Endpoints

Inherited from BuiltInErrors

Inherited from Responses

Inherited from StatusCodes

Inherited from Requests

Inherited from Urls

Inherited from Methods

Inherited from algebra.Endpoints

Inherited from algebra.BuiltInErrors

Inherited from algebra.Assets

Inherited from algebra.EndpointsWithCustomErrors

Inherited from Errors

Inherited from algebra.Responses

Inherited from algebra.StatusCodes

Inherited from algebra.Requests

Inherited from endpoints.SemigroupalSyntax

Inherited from algebra.Methods

Inherited from algebra.Urls

Inherited from endpoints.PartialInvariantFunctorSyntax

Inherited from endpoints.InvariantFunctorSyntax

Inherited from AnyRef

Inherited from Any

operations

types

Ungrouped