Trait

endpoints.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. SemigroupalSyntax
  12. InvariantFunctorSyntax
  13. Methods
  14. Urls
  15. AnyRef
  16. 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 DocumentedHeader(name: String, description: Option[String], required: Boolean, schema: Schema) extends Product with Serializable

    Permalink
    Definition Classes
    Requests
  3. case class DocumentedHeaders(value: List[DocumentedHeader]) extends Product with Serializable

    Permalink

    value

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

    Definition Classes
    Requests
  4. case class DocumentedParameter(name: String, required: Boolean, description: Option[String], schema: Schema) 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
  5. case class DocumentedQueryString(parameters: List[DocumentedParameter]) extends Product with Serializable

    Permalink

    parameters

    List of query string parameters

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

    Permalink
    Definition Classes
    Requests
  7. 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
  8. 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. Not optional because its required by openapi

    content

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

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

    Permalink

    path

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

    queryParameters

    Query string parameters

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

    Permalink
    Definition Classes
    Endpoints → Endpoints
  11. implicit class InvariantFunctorSyntax[A, F[_]] extends AnyRef

    Permalink
    Definition Classes
    InvariantFunctorSyntax
  12. abstract type JsonRequest[A]

    Permalink
    Definition Classes
    JsonEntities
  13. abstract type JsonResponse[A]

    Permalink
    Definition Classes
    JsonEntities
  14. sealed trait Method extends AnyRef

    Permalink
    Definition Classes
    Methods
  15. type Path[A] = DocumentedUrl

    Permalink
    Definition Classes
    Urls → Urls
  16. implicit class PathOps[A] extends AnyRef

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

    Permalink
    Definition Classes
    Urls → Urls
  18. implicit class QueryStringOps[A] extends AnyRef

    Permalink
    Definition Classes
    Urls
  19. type QueryStringParam[A] = Schema

    Permalink
    Definition Classes
    Urls → Urls
  20. type Request[A] = DocumentedRequest

    Permalink
    Definition Classes
    Requests → Requests
  21. type RequestEntity[A] = Option[DocumentedRequestEntity]

    Permalink
    Definition Classes
    Requests → Requests
  22. type RequestHeaders[A] = DocumentedHeaders

    Permalink
    Definition Classes
    Requests → Requests
  23. type Response[A] = List[DocumentedResponse]

    Permalink
    Definition Classes
    Responses → Responses
  24. implicit class ResponseExtensions[A] extends AnyRef

    Permalink
    Definition Classes
    Responses
  25. type Segment[A] = Schema

    Permalink
    Definition Classes
    Urls → Urls
  26. implicit class SemigroupalSyntax[A, F[_]] extends AnyRef

    Permalink
    Definition Classes
    SemigroupalSyntax
  27. type Url[A] = DocumentedUrl

    Permalink
    Definition Classes
    Urls → Urls

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 Options extends Method with Product with Serializable

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

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

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

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

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

    Permalink
    Definition Classes
    Urls → Urls
  12. def clone(): AnyRef

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

    Permalink
    Definition Classes
    Urls → Urls
  14. final def delete[UrlP, HeadersP, Out](url: Url[UrlP], headers: RequestHeaders[HeadersP])(implicit tuplerUH: Tupler.Aux[UrlP, HeadersP, Out]): Request[Out]

    Permalink
    Definition Classes
    Requests
  15. implicit def dummyPathToUrl[A](p: Path[A]): Url[A]

    Permalink
    Definition Classes
    Urls
  16. def emptyHeaders: DocumentedHeaders

    Permalink
    Definition Classes
    Requests → Requests
  17. def emptyRequest: None.type

    Permalink
    Definition Classes
    Requests → Requests
  18. def emptyResponse(docs: Documentation): Response[Unit]

    Permalink
    Definition Classes
    Responses → Responses
  19. def endpoint[A, B](request: Request[A], response: Response[B], summary: Documentation = None, description: Documentation = None, tags: List[String] = Nil): Endpoint[A, B]

    Permalink
    Definition Classes
    Endpoints → Endpoints
  20. final def eq(arg0: AnyRef): Boolean

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

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

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  23. final def get[UrlP, HeadersP, Out](url: Url[UrlP], headers: RequestHeaders[HeadersP])(implicit tuplerUH: Tupler.Aux[UrlP, HeadersP, Out]): Request[Out]

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  26. def header(name: String, docs: Documentation): RequestHeaders[String]

    Permalink
    Definition Classes
    Requests → Requests
  27. def intQueryString: QueryStringParam[Int]

    Permalink
    Definition Classes
    Urls → Urls
  28. def intSegment: Segment[Int]

    Permalink
    Definition Classes
    Urls → Urls
  29. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  30. def jsonRequest[A](docs: Documentation)(implicit arg0: JsonRequest[A]): RequestEntity[A]

    Permalink
    Definition Classes
    JsonEntities → JsonEntities
  31. def jsonResponse[A](docs: Documentation)(implicit arg0: JsonResponse[A]): Response[A]

    Permalink
    Definition Classes
    JsonEntities → JsonEntities
  32. def longQueryString: QueryStringParam[Long]

    Permalink
    Definition Classes
    Urls → Urls
  33. def longSegment: Segment[Long]

    Permalink
    Definition Classes
    Urls → Urls
  34. final def ne(arg0: AnyRef): Boolean

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

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

    Permalink
    Definition Classes
    AnyRef
  37. 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
  38. def optHeader(name: String, docs: Documentation): RequestHeaders[Option[String]]

    Permalink
    Definition Classes
    Requests → Requests
  39. def optQs[A](name: String, docs: Documentation)(implicit value: QueryStringParam[A]): QueryString[Option[A]]

    Permalink
    Definition Classes
    Urls → Urls
  40. val path: Path[Unit]

    Permalink
    Definition Classes
    Urls
  41. final def post[UrlP, BodyP, HeadersP, UrlAndBodyPTupled, Out](url: Url[UrlP], entity: RequestEntity[BodyP], headers: RequestHeaders[HeadersP])(implicit tuplerUB: Tupler.Aux[UrlP, BodyP, UrlAndBodyPTupled], tuplerUBH: Tupler.Aux[UrlAndBodyPTupled, HeadersP, Out]): Request[Out]

    Permalink
    Definition Classes
    Requests
  42. final def put[UrlP, BodyP, HeadersP, UrlAndBodyPTupled, Out](url: Url[UrlP], entity: RequestEntity[BodyP], headers: RequestHeaders[HeadersP])(implicit tuplerUB: Tupler.Aux[UrlP, BodyP, UrlAndBodyPTupled], tuplerUBH: Tupler.Aux[UrlAndBodyPTupled, HeadersP, Out]): Request[Out]

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

    Permalink
    Definition Classes
    Urls → Urls
  44. implicit lazy val reqEntityInvFunctor: InvariantFunctor[RequestEntity]

    Permalink
    Definition Classes
    Requests → Requests
  45. implicit lazy val reqHeadersInvFunctor: InvariantFunctor[RequestHeaders]

    Permalink
    Definition Classes
    Requests → Requests
  46. implicit lazy val reqHeadersSemigroupal: Semigroupal[RequestHeaders]

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

    Permalink
    Definition Classes
    Requests → Requests
  48. def segment[A](name: String, docs: Documentation)(implicit A: Segment[A]): Path[A]

    Permalink
    Definition Classes
    Urls → Urls
  49. def staticPathSegment(segment: String): Path[Unit]

    Permalink
    Definition Classes
    Urls → Urls
  50. def stringQueryString: QueryStringParam[String]

    Permalink
    Definition Classes
    Urls → Urls
  51. def stringSegment: Segment[String]

    Permalink
    Definition Classes
    Urls → Urls
  52. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  53. def textRequest(docs: Documentation): Option[DocumentedRequestEntity]

    Permalink
    Definition Classes
    Requests → Requests
  54. def textResponse(docs: Documentation): Response[String]

    Permalink
    Definition Classes
    Responses → Responses
  55. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  56. implicit lazy val urlInvFunctor: InvariantFunctor[Url]

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

    Permalink
    Definition Classes
    Urls → Urls
  58. final def wait(): Unit

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  61. def wheneverFound[A](response: Response[A], notFoundDocs: Documentation): Response[Option[A]]

    Permalink
    Definition Classes
    Responses → Responses

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