Packages

trait Request[A] extends AnyRef

Source
Endpoints.scala
Linear Supertypes
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Request
  2. AnyRef
  3. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Type Members

  1. abstract type UrlAndHeaders

    Information extracted from the URL and the headers

Abstract Value Members

  1. abstract def matchAndParseHeaders(http4sRequest: Http4sRequest): Option[Either[Http4sResponse, Validated[UrlAndHeaders]]]

    Checks whether the incoming http4sRequest matches this request description, and parses its URL parameters and headers.

    Checks whether the incoming http4sRequest matches this request description, and parses its URL parameters and headers.

    returns

    None if the incoming request does not match this request method and URL. Otherwise:

    • Some(Left(response)) to immediately return a custom response (e.g. 401),
    • Some(Right(Valid(urlAndHeadersData))) in case the URL and headers were successfully parsed,
    • Some(Right(Invalid(errors))) in case the URL and headers had validation errors
  2. abstract def parseEntity(urlAndHeaders: UrlAndHeaders, http4sRequest: Http4sRequest): Effect[Either[Http4sResponse, A]]

    Parse the request entity.

    Parse the request entity.

    Returns either a value of type A containing all the information extracted from the request (including URL, headers, and entity), or an http4s response directly.

Concrete Value Members

  1. final def matches(http4sRequest: Http4sRequest): Option[Effect[Either[Http4sResponse, A]]]

    Checks whether the incoming request matches this request description, parses its URL parameters and headers, and then parses its entity if there was no previous validation errors.