Trait

endpoints.documented.openapi

JsonEntities

Related Doc: package openapi

Permalink

trait JsonEntities extends algebra.JsonEntities with Endpoints

Partial interpreter for algebra.JsonEntities.

Source
JsonEntities.scala
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. JsonEntities
  2. Endpoints
  3. Responses
  4. Requests
  5. Methods
  6. Urls
  7. JsonEntities
  8. Endpoints
  9. Responses
  10. Requests
  11. Methods
  12. Urls
  13. AnyRef
  14. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. case class DocumentedEndpoint(path: String, item: PathItem) extends Product with Serializable

    Permalink

    path

    Path template (e.g. “/user/{id}”)

    item

    Item documentation

    Definition Classes
    Endpoints
  2. case class DocumentedHeaders(value: List[HeaderName]) extends Product with Serializable

    Permalink

    value

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

    Definition Classes
    Requests
  3. case class DocumentedParameter(name: String, required: Boolean) extends Product with Serializable

    Permalink

    name

    Name of the parameter

    required

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

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

    Permalink

    parameters

    List of query string parameters

    Definition Classes
    Urls
  5. case class DocumentedRequest(method: Requests.Method, url: Requests.DocumentedUrl, headers: DocumentedHeaders, entity: Option[DocumentedRequestEntity]) extends Product with Serializable

    Permalink
    Definition Classes
    Requests
  6. case class DocumentedRequestEntity(documentation: Option[String], content: Map[String, MediaType]) extends Product with Serializable

    Permalink

    documentation

    Human readable documentation of the request entity

    content

    Map that associates each possible content-type (e.g. “text/html”) with a MediaType description

    Definition Classes
    Requests
  7. case class DocumentedResponse(status: Int, documentation: String, content: Map[String, MediaType]) extends Product with Serializable

    Permalink

    status

    Response status code (e.g. 200)

    documentation

    Human readable documentation

    content

    Map that associates each possible content-type (e.g. “text/html”) with a MediaType description

    Definition Classes
    Responses
  8. case class DocumentedUrl(path: String, pathParameters: List[DocumentedParameter], queryParameters: List[DocumentedParameter]) extends Product with Serializable

    Permalink

    path

    Path template (e.g. “/user/{id}”)

    pathParameters

    Path parameters

    queryParameters

    Query string parameters

    Definition Classes
    Urls
  9. type Endpoint[A, B] = DocumentedEndpoint

    Permalink

    Information carried by an HTTP endpoint

    Information carried by an HTTP endpoint

    Definition Classes
    EndpointsEndpoints
  10. type HeaderName = String

    Permalink
    Definition Classes
    Requests
  11. abstract type JsonRequest[A]

    Permalink

    Type class defining how to represent the A information as a JSON request entity

    Type class defining how to represent the A information as a JSON request entity

    Definition Classes
    JsonEntities
  12. abstract type JsonResponse[A]

    Permalink

    Type class defining how to represent the A information as a JSON response entity

    Type class defining how to represent the A information as a JSON response entity

    Definition Classes
    JsonEntities
  13. sealed trait Method extends AnyRef

    Permalink
    Definition Classes
    Methods
  14. type MuxEndpoint[Req <: MuxRequest, Resp, Transport] = DocumentedEndpoint

    Permalink

    Information carried by a multiplexed HTTP endpoint.

    Information carried by a multiplexed HTTP endpoint.

    Definition Classes
    EndpointsEndpoints
  15. type Path[A] = DocumentedUrl

    Permalink

    An URL path carrying an A information

    An URL path carrying an A information

    Definition Classes
    UrlsUrls
  16. implicit class PathOps[A] extends AnyRef

    Permalink

    Convenient methods for Paths.

    Convenient methods for Paths.

    Definition Classes
    Urls
  17. type QueryString[A] = DocumentedQueryString

    Permalink

    A query string carrying an A information

    A query string carrying an A information

    Definition Classes
    UrlsUrls
  18. implicit class QueryStringOps[A] extends AnyRef

    Permalink

    Provides convenient methods on QueryString.

    Provides convenient methods on QueryString.

    Definition Classes
    Urls
  19. type QueryStringParam[A] = Unit

    Permalink

    A single query string parameter carrying an A information.

    A single query string parameter carrying an A information.

    Definition Classes
    UrlsUrls
  20. type Request[A] = DocumentedRequest

    Permalink

    Information carried by a whole request (headers and entity)

    Information carried by a whole request (headers and entity)

    Definition Classes
    RequestsRequests
  21. type RequestEntity[A] = Option[DocumentedRequestEntity]

    Permalink

    Information carried by request entity

    Information carried by request entity

    Definition Classes
    RequestsRequests
  22. type RequestHeaders[A] = DocumentedHeaders

    Permalink

    Information carried by requests’ headers

    Information carried by requests’ headers

    Definition Classes
    RequestsRequests
  23. type Response[A] = List[DocumentedResponse]

    Permalink

    Information carried by a response

    Information carried by a response

    Definition Classes
    ResponsesResponses
  24. type Segment[A] = Unit

    Permalink

    An URL path segment carrying an A information.

    An URL path segment carrying an A information.

    Definition Classes
    UrlsUrls
  25. type Url[A] = DocumentedUrl

    Permalink

    An URL carrying an A information

    An URL carrying an A information

    Definition Classes
    UrlsUrls

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. object Delete extends Method with Product with Serializable

    Permalink
    Definition Classes
    Methods → Methods
  5. object Get extends Method with Product with Serializable

    Permalink
    Definition Classes
    Methods → Methods
  6. object Post extends Method with Product with Serializable

    Permalink
    Definition Classes
    Methods → Methods
  7. object Put extends Method with Product with Serializable

    Permalink
    Definition Classes
    Methods → Methods
  8. final def asInstanceOf[T0]: T0

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

    Permalink

    Chains the two paths

    Chains the two paths

    Definition Classes
    UrlsUrls
  10. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  11. def combineQueryStrings[A, B](first: QueryString[A], second: QueryString[B])(implicit tupler: Tupler[A, B]): QueryString[Out]

    Permalink

    Concatenates two QueryStrings

    Concatenates two QueryStrings

    Definition Classes
    UrlsUrls
  12. def emptyHeaders: DocumentedHeaders

    Permalink

    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.

    Definition Classes
    RequestsRequests
  13. def emptyRequest: None.type

    Permalink

    Empty request.

    Empty request.

    Definition Classes
    RequestsRequests
  14. def emptyResponse(documentation: String): Response[Unit]

    Permalink

    Empty response.

    Empty response.

    Definition Classes
    ResponsesResponses
  15. def endpoint[A, B](request: Request[A], response: Response[B]): Endpoint[A, B]

    Permalink

    HTTP endpoint.

    HTTP endpoint.

    request

    Request

    response

    Response

    Definition Classes
    EndpointsEndpoints
  16. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  17. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  18. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  19. final def get[A, B](url: Url[A], headers: RequestHeaders[B] = emptyHeaders)(implicit tuplerAC: Tupler[A, B]): Request[Out]

    Permalink

    Helper method to perform GET request

    Helper method to perform GET request

    Definition Classes
    Requests
  20. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  21. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  22. def intQueryString: QueryStringParam[Int]

    Permalink

    Ability to define Int query string parameters

    Ability to define Int query string parameters

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

    Permalink

    Ability to define Int path segments

    Ability to define Int path segments

    Definition Classes
    UrlsUrls
  24. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  25. def jsonRequest[A](documentation: Option[String])(implicit arg0: JsonRequest[A]): RequestEntity[A]

    Permalink

    Defines a RequestEntity[A] given an implicit JsonRequest[A]

    Defines a RequestEntity[A] given an implicit JsonRequest[A]

    Definition Classes
    JsonEntitiesJsonEntities
  26. def jsonResponse[A](documentation: String)(implicit arg0: JsonResponse[A]): Response[A]

    Permalink

    Defines a Response[A] given an implicit JsonResponse[A]

    Defines a Response[A] given an implicit JsonResponse[A]

    Definition Classes
    JsonEntitiesJsonEntities
  27. def longQueryString: QueryStringParam[Long]

    Permalink

    Query string parameter containing a Long value

    Query string parameter containing a Long value

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

    Permalink

    Segment containing a Long value

    Segment containing a Long value

    Definition Classes
    UrlsUrls
  29. def muxEndpoint[Req <: MuxRequest, Resp, Transport](request: Request[Transport], response: Response[Transport]): MuxEndpoint[Req, Resp, Transport]

    Permalink

    Multiplexed HTTP endpoint.

    Multiplexed HTTP endpoint.

    A multiplexing endpoint makes it possible to use several request and response types in the same HTTP endpoint. In other words, it allows to define several different actions through a singe HTTP endpoint.

    Req

    The base type of possible requests

    Resp

    The base type of possible responses

    Transport

    The data type used to transport the requests and responses

    request

    The request

    response

    The response

    Definition Classes
    EndpointsEndpoints
  30. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  31. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  32. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  33. def openApi(info: Info)(endpoints: DocumentedEndpoint*): OpenApi

    Permalink

    info

    General information about the documentation to generate

    endpoints

    The endpoints to generate the documentation for

    returns

    An OpenApi instance for the given endpoint descriptions

    Definition Classes
    Endpoints
  34. def optQs[A](name: String)(implicit value: QueryStringParam[A]): QueryString[Option[A]]

    Permalink

    Builds a QueryString with one optional parameter of type A.

    Builds a QueryString with one optional parameter of type A.

    name

    Parameter’s name

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

    Permalink

    An empty path.

    An empty path.

    Useful to begin a path definition:

    path / "foo" / segment[Int]("some-value")
    Definition Classes
    Urls
  36. final def post[A, B, C, AB](url: Url[A], entity: RequestEntity[B], headers: RequestHeaders[C] = emptyHeaders)(implicit tuplerAB: Tupler.Aux[A, B, AB], tuplerABC: Tupler[AB, C]): Request[Out]

    Permalink

    Helper method to perform POST request

    Helper method to perform POST request

    Definition Classes
    Requests
  37. def qs[A](name: String)(implicit value: QueryStringParam[A]): QueryString[A]

    Permalink

    Builds a QueryString with one parameter.

    Builds a QueryString with one parameter.

    A

    Type of the value carried by the parameter

    name

    Parameter’s name

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

    Permalink

    Request for given parameters

    Request for given parameters

    method

    Request method

    url

    Request URL

    Definition Classes
    RequestsRequests
  39. def segment[A](name: String)(implicit A: Segment[A]): Path[A]

    Permalink

    Builds a path segment carrying an A information

    Builds a path segment carrying an A information

    name

    Name for the segment (for documentation)

    Definition Classes
    UrlsUrls
  40. def staticPathSegment(segment: String): Path[Unit]

    Permalink

    Builds a static path segment

    Builds a static path segment

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

    Permalink

    Ability to define String query string parameters

    Ability to define String query string parameters

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

    Permalink

    Ability to define String path segments

    Ability to define String path segments

    Definition Classes
    UrlsUrls
  43. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  44. def textResponse(documentation: String): Response[String]

    Permalink

    Text response.

    Text response.

    Definition Classes
    ResponsesResponses
  45. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  46. def urlWithQueryString[A, B](path: Path[A], qs: QueryString[B])(implicit tupler: Tupler[A, B]): Url[Out]

    Permalink

    Builds an URL from the given path and query string

    Builds an URL from the given path and query string

    Definition Classes
    UrlsUrls
  47. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  48. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  49. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Endpoints

Inherited from Responses

Inherited from Requests

Inherited from Methods

Inherited from Urls

Inherited from algebra.JsonEntities

Inherited from algebra.Endpoints

Inherited from algebra.Responses

Inherited from algebra.Requests

Inherited from algebra.Methods

Inherited from algebra.Urls

Inherited from AnyRef

Inherited from Any

Ungrouped