Packages

trait Requests extends algebra.Requests with Urls with Methods with Headers

Interpreter for algebra.Requests.

Source
Requests.scala
Type Hierarchy
Ordering
  1. Grouped
  2. Alphabetic
  3. By Inheritance
Inherited
  1. Requests
  2. Headers
  3. Methods
  4. Urls
  5. Requests
  6. SemigroupalSyntax
  7. Methods
  8. Urls
  9. PartialInvariantFunctorSyntax
  10. InvariantFunctorSyntax
  11. AnyRef
  12. Any
Implicitly
  1. by StringFormat
  2. by Ensuring
  3. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Type Members

  1. implicit class InvariantFunctorSyntax[A, F[_]] extends AnyRef

    Extension methods for values of type F[A] for which there is an implicit InvariantFunctor[F] instance.

    Extension methods for values of type F[A] for which there is an implicit InvariantFunctor[F] instance.

    Definition Classes
    InvariantFunctorSyntax
  2. implicit class PartialInvariantFunctorSyntax[A, F[_]] extends AnyRef
  3. implicit class SemigroupalSyntax[A, F[_]] extends AnyRef
    Definition Classes
    SemigroupalSyntax
  4. implicit class PathOps[A] extends AnyRef

    Convenient methods for Paths.

    Convenient methods for Paths.

    Definition Classes
    Urls
  5. implicit class QueryStringSyntax[A] extends AnyRef

    Extension methods on QueryString.

    Extension methods on QueryString.

    Definition Classes
    Urls
  6. case class DocumentedHeader(name: String, description: Option[String], required: Boolean, schema: Schema) extends Product with Serializable
    Definition Classes
    Headers
  7. case class DocumentedHeaders(value: List[DocumentedHeader]) extends Product with Serializable

    value

    List of request header names (e.g. “Authorization”)

    Definition Classes
    Headers
  8. sealed trait Method extends AnyRef
    Definition Classes
    Methods
  9. case class DocumentedRequest(method: Requests.Method, url: Requests.DocumentedUrl, headers: Requests.DocumentedHeaders, documentation: Documentation, entity: Map[String, MediaType]) extends Product with Serializable
  10. type Path[A] = DocumentedUrl

    An URL path carrying an A information

    An URL path carrying an A information

    Definition Classes
    UrlsUrls
    Note

    This type has implicit methods provided by the PathOps, InvariantFunctorSyntax, and the PartialInvariantFunctorSyntax classes.

  11. type QueryString[A] = DocumentedQueryString

    A query string carrying an A information

    A query string carrying an A information

    QueryString values can be created with the qs operation, and can be combined with the & operation:

    val queryPageAndLang: QueryString[(Int, Option[String])] =
      qs[Int]("page") & qs[Option[String]]("lang")
    Definition Classes
    UrlsUrls
    Note

    This type has implicit methods provided by the QueryStringSyntax, InvariantFunctorSyntax, and the PartialInvariantFunctorSyntax classes.

  12. type QueryStringParam[A] = DocumentedQueryStringParam

    A query string parameter codec for type A.

    A query string parameter codec for type A.

    Definition Classes
    UrlsUrls
    Note

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

  13. type Request[A] = DocumentedRequest

    Information carried by a whole request (headers and entity)

    Information carried by a whole request (headers and entity)

    Definition Classes
    RequestsRequests
    Note

    This type has implicit methods provided by the PartialInvariantFunctorSyntax class.

  14. type RequestEntity[A] = Map[String, MediaType]

    Information carried by request entity

    Information carried by request entity

    Definition Classes
    RequestsRequests
    Note

    This type has implicit methods provided by the PartialInvariantFunctorSyntax class.

  15. type RequestHeaders[A] = DocumentedHeaders

    Information carried by requests’ headers.

    Information carried by requests’ headers.

    You can construct values of type RequestHeaders by using the operations requestHeader, optRequestHeader, or emptyRequestHeaders.

    Definition Classes
    RequestsRequests
    Note

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

  16. type Segment[A] = Schema

    An URL path segment codec for type A.

    An URL path segment codec for type A.

    Definition Classes
    UrlsUrls
    Note

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

  17. type Url[A] = DocumentedUrl

    An URL carrying an A information

    An URL carrying an A information

    Definition Classes
    UrlsUrls
    Note

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

  18. case class DocumentedParameter(name: String, required: Boolean, description: Option[String], schema: Schema) extends Product with Serializable

    name

    Name of the parameter

    required

    Whether this parameter is required or not (MUST be true for path parameters)

    Definition Classes
    Urls
  19. case class DocumentedQueryString(parameters: List[DocumentedParameter]) extends Product with Serializable

    parameters

    List of query string parameters

    Definition Classes
    Urls
  20. case class DocumentedQueryStringParam(schema: Schema, isRequired: Boolean) extends Product with Serializable
    Definition Classes
    Urls
  21. case class DocumentedUrl(path: List[Either[String, DocumentedParameter]], queryParameters: List[DocumentedParameter]) extends Product with Serializable

    path

    List of path segments. Left is a static segment, right is a path parameter

    queryParameters

    Query string parameters

    Definition Classes
    Urls

Value Members

  1. object Delete extends Method with Product with Serializable

    Definition Classes
    MethodsMethods
  2. object Get extends Method with Product with Serializable

    Definition Classes
    MethodsMethods
  3. object Options extends Method with Product with Serializable

    Definition Classes
    MethodsMethods
  4. object Patch extends Method with Product with Serializable

    Definition Classes
    MethodsMethods
  5. object Post extends Method with Product with Serializable

    Definition Classes
    MethodsMethods
  6. object Put extends Method with Product with Serializable

    Definition Classes
    MethodsMethods
  7. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  8. final def ##(): Int
    Definition Classes
    AnyRef → Any
  9. def ->[B](y: B): (Requests, B)
    Implicit
    This member is added by an implicit conversion from Requests toArrowAssoc[Requests] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  10. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  11. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  12. def booleanQueryString: QueryStringParam[Boolean]

    Query string parameter containing a Boolean value

    Query string parameter containing a Boolean value

    Definition Classes
    UrlsUrls
  13. def chainPaths[A, B](first: Path[A], second: Path[B])(implicit tupler: Tupler[A, B]): Path[Out]

    Chains the two paths

    Chains the two paths

    Definition Classes
    UrlsUrls
  14. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  15. 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
    UrlsUrls
  16. final def delete[UrlP, HeadersP, Out](url: Url[UrlP], docs: Documentation = None, headers: RequestHeaders[HeadersP] = emptyRequestHeaders)(implicit tuplerUH: Tupler.Aux[UrlP, HeadersP, Out]): Request[Out]

    Helper method to perform DELETE request

    Helper method to perform DELETE request

    UrlP

    Payload carried by url

    HeadersP

    Payload carried by headers

    Definition Classes
    Requests
  17. def doubleQueryString: QueryStringParam[Double]

    Codec for query string parameters of type Double

    Codec for query string parameters of type Double

    Definition Classes
    UrlsUrls
  18. def doubleSegment: Segment[Double]

    Segment codec for type Double

    Segment codec for type Double

    Definition Classes
    UrlsUrls
  19. implicit def dummyPathToUrl[A](p: Path[A]): Url[A]

    Implicit conversion to get rid of intellij errors when defining paths.

    Implicit conversion to get rid of intellij errors when defining paths. Effectively should not be called.

    Definition Classes
    Urls
    See also

    https://youtrack.jetbrains.com/issue/SCL-16284

  20. lazy val emptyRequest: Map[String, MediaType]

    Empty request -- request without a body.

    Empty request -- request without a body. Use description of endpoints.algebra.Endpoints#endpoint to document an empty body.

    Definition Classes
    RequestsRequests
  21. def emptyRequestHeaders: DocumentedHeaders

    No particular information.

    No particular information. Does not mean that the headers *have to* be empty. Just that, from a server point of view no information will be extracted from them, and from a client point of view no particular headers will be built in the request.

    Use description of endpoints.algebra.Endpoints#endpoint to document empty headers.

    Definition Classes
    RequestsRequests
  22. def ensuring(cond: (Requests) => Boolean, msg: => Any): Requests
    Implicit
    This member is added by an implicit conversion from Requests toEnsuring[Requests] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  23. def ensuring(cond: (Requests) => Boolean): Requests
    Implicit
    This member is added by an implicit conversion from Requests toEnsuring[Requests] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  24. def ensuring(cond: Boolean, msg: => Any): Requests
    Implicit
    This member is added by an implicit conversion from Requests toEnsuring[Requests] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  25. def ensuring(cond: Boolean): Requests
    Implicit
    This member is added by an implicit conversion from Requests toEnsuring[Requests] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  26. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  27. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  28. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  29. def formatted(fmtstr: String): String
    Implicit
    This member is added by an implicit conversion from Requests toStringFormat[Requests] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  30. final def get[UrlP, HeadersP, Out](url: Url[UrlP], docs: Documentation = None, headers: RequestHeaders[HeadersP] = emptyRequestHeaders)(implicit tuplerUH: Tupler.Aux[UrlP, HeadersP, Out]): Request[Out]

    Helper method to perform GET request

    Helper method to perform GET request

    UrlP

    Payload carried by url

    HeadersP

    Payload carried by headers

    Definition Classes
    Requests
  31. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  32. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  33. def intQueryString: QueryStringParam[Int]

    Ability to define Int query string parameters

    Ability to define Int query string parameters

    Definition Classes
    UrlsUrls
  34. def intSegment: Segment[Int]

    Ability to define Int path segments

    Ability to define Int path segments

    Definition Classes
    UrlsUrls
  35. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  36. def longQueryString: QueryStringParam[Long]

    Query string parameter containing a Long value

    Query string parameter containing a Long value

    Definition Classes
    UrlsUrls
  37. def longSegment: Segment[Long]

    Segment containing a Long value

    Segment containing a Long value

    Definition Classes
    UrlsUrls
  38. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  39. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  40. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  41. def optRequestHeader(name: String, docs: Documentation): RequestHeaders[Option[String]]

    An optional request header

    An optional request header

    name

    Header name (e.g., “Authorization”)

    Definition Classes
    RequestsRequests
  42. implicit def optionalQueryStringParam[A](implicit param: QueryStringParam[A]): QueryStringParam[Option[A]]

    Make a query string parameter optional:

    Make a query string parameter optional:

    path / "articles" /? qs[Option[Int]]("page")

    Client interpreters must omit optional query string parameters that are empty. Server interpreters must accept incoming requests whose optional query string parameters are missing. Server interpreters must report a failure for incoming requests whose optional query string parameters are present, but malformed.

    Definition Classes
    UrlsUrls
  43. val path: Path[Unit]

    An empty path.

    An empty path.

    Useful to begin a path definition:

    path / "foo" / segment[Int] /? qs[String]("bar")
    Definition Classes
    Urls
  44. implicit lazy val pathPartialInvariantFunctor: PartialInvariantFunctor[Path]

    Provides xmap and xmapPartial operations.

    Provides xmap and xmapPartial operations.

    Definition Classes
    UrlsUrls
    See also

    PartialInvariantFunctorSyntax and InvariantFunctorSyntax

  45. final def post[UrlP, BodyP, HeadersP, UrlAndBodyPTupled, Out](url: Url[UrlP], entity: RequestEntity[BodyP], docs: Documentation = None, headers: RequestHeaders[HeadersP] = emptyRequestHeaders)(implicit tuplerUB: Tupler.Aux[UrlP, BodyP, UrlAndBodyPTupled], tuplerUBH: Tupler.Aux[UrlAndBodyPTupled, HeadersP, Out]): Request[Out]

    Helper method to perform POST request

    Helper method to perform POST request

    UrlP

    Payload carried by url

    BodyP

    Payload carried by body

    HeadersP

    Payload carried by headers

    UrlAndBodyPTupled

    Payloads of Url and Body tupled together by Tupler

    docs

    Request documentation

    Definition Classes
    Requests
  46. final def put[UrlP, BodyP, HeadersP, UrlAndBodyPTupled, Out](url: Url[UrlP], entity: RequestEntity[BodyP], docs: Documentation = None, headers: RequestHeaders[HeadersP] = emptyRequestHeaders)(implicit tuplerUB: Tupler.Aux[UrlP, BodyP, UrlAndBodyPTupled], tuplerUBH: Tupler.Aux[UrlAndBodyPTupled, HeadersP, Out]): Request[Out]

    Helper method to perform PUT request

    Helper method to perform PUT request

    UrlP

    Payload carried by url

    BodyP

    Payload carried by body

    HeadersP

    Payload carried by headers

    UrlAndBodyPTupled

    Payloads of Url and Body tupled together by Tupler

    Definition Classes
    Requests
  47. def qs[A](name: String, docs: Documentation)(implicit value: QueryStringParam[A]): QueryString[A]

    Builds a QueryString with one parameter.

    Builds a QueryString with one parameter.

    Examples:

    qs[Int]("page")            // mandatory `page` parameter
    qs[Option[String]]("lang") // optional `lang` parameter
    qs[List[Long]]("id")       // repeated `id` parameter
    A

    Type of the value carried by the parameter

    name

    Parameter’s name

    Definition Classes
    UrlsUrls
  48. implicit lazy val queryStringParamPartialInvariantFunctor: PartialInvariantFunctor[QueryStringParam]

    Provides xmap and xmapPartial operations.

    Provides xmap and xmapPartial operations.

    Definition Classes
    UrlsUrls
    See also

    PartialInvariantFunctorSyntax and InvariantFunctorSyntax

  49. implicit lazy val queryStringPartialInvariantFunctor: PartialInvariantFunctor[QueryString]

    Provides xmap and xmapPartial operations.

    Provides xmap and xmapPartial operations.

    Definition Classes
    UrlsUrls
    See also

    PartialInvariantFunctorSyntax and InvariantFunctorSyntax

  50. def remainingSegments(name: String, docs: Documentation): Path[String]

    The remaining segments of the path.

    The remaining segments of the path. The String value carried by this Path is still URL-encoded.

    Definition Classes
    UrlsUrls
  51. implicit def repeatedQueryStringParam[A, CC[X] <: Iterable[X]](implicit param: QueryStringParam[A], factory: Factory[A, CC[A]]): QueryStringParam[CC[A]]

    Support query string parameters with multiple values:

    Support query string parameters with multiple values:

    path / "articles" /? qs[List[Long]]("id")

    Server interpreters must accept incoming requests where such parameters are missing (in such a case, its value is an empty collection), and report a failure if at least one value is malformed.

    Definition Classes
    UrlsUrls
  52. def request[A, B, C, AB, Out](method: Method, url: Url[A], entity: RequestEntity[B] = emptyRequest, docs: Documentation = None, headers: RequestHeaders[C] = emptyRequestHeaders)(implicit tuplerAB: Tupler.Aux[A, B, AB], tuplerABC: Tupler.Aux[AB, C, Out]): Request[Out]

    Request for given parameters

    Request for given parameters

    method

    Request method

    url

    Request URL

    entity

    Request entity

    docs

    Request documentation

    headers

    Request headers

    Definition Classes
    RequestsRequests
  53. implicit lazy val requestEntityPartialInvariantFunctor: PartialInvariantFunctor[RequestEntity]

    Provides the operations xmap and xmapPartial.

    Provides the operations xmap and xmapPartial.

    Definition Classes
    RequestsRequests
    See also

    PartialInvariantFunctorSyntax

  54. def requestHeader(name: String, docs: Documentation): RequestHeaders[String]

    A required request header

    A required request header

    name

    Header name (e.g., “Authorization”)

    Definition Classes
    RequestsRequests
  55. implicit lazy val requestHeadersPartialInvariantFunctor: PartialInvariantFunctor[RequestHeaders]

    Provides the operations xmap and xmapPartial.

    Provides the operations xmap and xmapPartial.

    Definition Classes
    RequestsRequests
    See also

    PartialInvariantFunctorSyntax

  56. implicit lazy val requestHeadersSemigroupal: Semigroupal[RequestHeaders]

    Provides ++ operation.

    Provides ++ operation.

    Definition Classes
    RequestsRequests
    See also

    SemigroupalSyntax

  57. implicit def requestPartialInvariantFunctor: PartialInvariantFunctor[Request]

    Provides the operations xmap and xmapPartial.

    Provides the operations xmap and xmapPartial.

    Definition Classes
    RequestsRequests
    See also

    PartialInvariantFunctorSyntax

  58. def segment[A](name: String, docs: Documentation)(implicit A: Segment[A]): Path[A]

    A path segment carrying an A information

    A path segment carrying an A information

    Definition Classes
    UrlsUrls
  59. implicit lazy val segmentPartialInvariantFunctor: PartialInvariantFunctor[Segment]

    Provides xmap and xmapPartial operations.

    Provides xmap and xmapPartial operations.

    Definition Classes
    UrlsUrls
    See also

    PartialInvariantFunctorSyntax and InvariantFunctorSyntax

  60. def staticPathSegment(segment: String): Path[Unit]

    A path segment whose value is the given segment

    A path segment whose value is the given segment

    Definition Classes
    UrlsUrls
  61. def stringQueryString: QueryStringParam[String]

    Ability to define String query string parameters

    Ability to define String query string parameters

    Definition Classes
    UrlsUrls
  62. def stringSegment: Segment[String]

    Ability to define String path segments Servers should return an URL-decoded string value, and clients should take an URL-decoded string value.

    Ability to define String path segments Servers should return an URL-decoded string value, and clients should take an URL-decoded string value.

    Definition Classes
    UrlsUrls
  63. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  64. lazy val textRequest: Map[String, MediaType]

    Request with a String body.

    Request with a String body.

    Definition Classes
    RequestsRequests
  65. def toString(): String
    Definition Classes
    AnyRef → Any
  66. def tryParseString[A](type: String)(parse: (String) => A): (String) => Validated[A]
    Definition Classes
    Urls
  67. implicit lazy val urlPartialInvariantFunctor: PartialInvariantFunctor[Url]

    Provides xmap and xmapPartial operations

    Provides xmap and xmapPartial operations

    Definition Classes
    UrlsUrls
    See also

    PartialInvariantFunctorSyntax and InvariantFunctorSyntax

  68. 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
    UrlsUrls
  69. def uuidQueryString: QueryStringParam[UUID]

    Ability to define UUID query string parameters

    Ability to define UUID query string parameters

    Definition Classes
    UrlsUrls
  70. def uuidSegment: Segment[UUID]

    Ability to define UUID path segments

    Ability to define UUID path segments

    Definition Classes
    UrlsUrls
  71. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  72. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  73. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()

Deprecated Value Members

  1. def [B](y: B): (Requests, B)
    Implicit
    This member is added by an implicit conversion from Requests toArrowAssoc[Requests] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @deprecated
    Deprecated

    (Since version 2.13.0) Use -> instead. If you still wish to display it as one character, consider using a font with programming ligatures such as Fira Code.

Inherited from Headers

Inherited from Methods

Inherited from Urls

Inherited from algebra.Requests

Inherited from algebra.Methods

Inherited from algebra.Urls

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion StringFormat fromRequests to StringFormat[Requests]

Inherited by implicit conversion Ensuring fromRequests to Ensuring[Requests]

Inherited by implicit conversion ArrowAssoc fromRequests to ArrowAssoc[Requests]

Types

Types introduced by the algebra

Operations

Operations creating and transforming values

Ungrouped