Trait

endpoints.play.server

JsonEntitiesFromCodec

Related Doc: package server

Permalink

trait JsonEntitiesFromCodec extends Endpoints with algebra.JsonEntitiesFromCodec

Interpreter for endpoints.algebra.JsonEntitiesFromCodec that decodes JSON requests and encodes JSON responses.

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

Type Members

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

    Permalink
    Definition Classes
    Urls
  2. case class Endpoint[A, B](request: Request[A], response: Response[B]) extends Product with Serializable

    Permalink

    Concrete representation of an Endpoint for routing purpose.

    Concrete representation of an Endpoint for routing purpose.

    Definition Classes
    Endpoints
  3. case class EndpointWithHandler[A, B](endpoint: Endpoint[A, B], service: (A) ⇒ Future[B]) extends ToPlayHandler with Product with Serializable

    Permalink

    An endpoint from which we can get a Play request handler.

    An endpoint from which we can get a Play request handler.

    Definition Classes
    Endpoints
  4. implicit class InvariantFunctorSyntax[A, F[_]] extends AnyRef

    Permalink
    Definition Classes
    InvariantFunctorSyntax
  5. abstract type JsonCodec[A]

    Permalink
    Definition Classes
    JsonEntitiesFromCodec
  6. type JsonRequest[A] = Codec[String, A]

    Permalink
    Definition Classes
    JsonEntitiesFromCodec → JsonEntities
  7. type JsonResponse[A] = Codec[String, A]

    Permalink
    Definition Classes
    JsonEntitiesFromCodec → JsonEntities
  8. case class Method(value: String) extends Product with Serializable

    Permalink
    Definition Classes
    Methods
  9. implicit class PartialInvariantFunctorSyntax[A, F[_]] extends AnyRef

    Permalink
    Definition Classes
    PartialInvariantFunctorSyntax
  10. trait Path[A] extends Url[A]

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

    Permalink
    Definition Classes
    Urls
  12. trait QueryString[A] extends AnyRef

    Permalink

    Query string encoding and decoding

    Query string encoding and decoding

    Definition Classes
    Urls
  13. implicit class QueryStringOps[A] extends AnyRef

    Permalink
    Definition Classes
    Urls
  14. trait QueryStringParam[A] extends AnyRef

    Permalink
    Definition Classes
    Urls
  15. trait Request[A] extends AnyRef

    Permalink

    An HTTP request.

    An HTTP request.

    Has an instance of InvariantFunctor.

    Definition Classes
    Endpoints
  16. type RequestEntity[A] = BodyParser[A]

    Permalink

    Decodes a request entity

    Decodes a request entity

    Definition Classes
    Endpoints → Requests
  17. type RequestExtractor[A] = (RequestHeader) ⇒ Option[A]

    Permalink

    Convenient type alias modeling the extraction of an A information from request headers.

    Convenient type alias modeling the extraction of an A information from request headers.

    This type has an instance of Applicative.

    Definition Classes
    Urls
  18. type RequestHeaders[A] = (Headers) ⇒ Either[Result, A]

    Permalink

    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
    Endpoints → Requests
  19. type Response[A] = (A) ⇒ Result

    Permalink

    Turns the A information into a proper Play Result

    Turns the A information into a proper Play Result

    Definition Classes
    Endpoints → Responses
  20. implicit class ResponseExtensions[A] extends AnyRef

    Permalink
    Definition Classes
    Responses
  21. trait Segment[A] extends AnyRef

    Permalink

    Defines how to decode and encode path segments

    Defines how to decode and encode path segments

    Definition Classes
    Urls
  22. implicit class SemigroupalSyntax[A, F[_]] extends AnyRef

    Permalink
    Definition Classes
    SemigroupalSyntax
  23. type StatusCode = play.api.mvc.Results.Status

    Permalink
    Definition Classes
    StatusCodes → StatusCodes
  24. trait ToPlayHandler extends AnyRef

    Permalink

    Something that can be used as a Play request handler

    Something that can be used as a Play request handler

    Definition Classes
    Endpoints
  25. trait Url[A] extends AnyRef

    Permalink
    Definition Classes
    Urls
  26. trait UrlAndHeaders[A] extends AnyRef

    Permalink

    The URL and HTTP headers of a request.

    The URL and HTTP headers of a request.

    Definition Classes
    Endpoints

Abstract Value Members

  1. implicit abstract def jsonCodec[A](implicit arg0: JsonCodec[A]): Codec[String, A]

    Permalink
    Definition Classes
    JsonEntitiesFromCodec
  2. abstract val playComponents: PlayComponents

    Permalink
    Attributes
    protected
    Definition Classes
    Endpoints

Concrete 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. def BadRequest: play.api.mvc.Results.Status

    Permalink
    Definition Classes
    StatusCodes → StatusCodes
  5. def Delete: Method

    Permalink
    Definition Classes
    Methods → Methods
  6. implicit def EmptyEndpointToPlayHandler[A, B](endpoint: Endpoint[A, B])(implicit ev: =:=[Unit, B]): ToPlayHandler

    Permalink
    Definition Classes
    Endpoints
  7. def Get: Method

    Permalink
    Definition Classes
    Methods → Methods
  8. def NotFound: play.api.mvc.Results.Status

    Permalink
    Definition Classes
    StatusCodes → StatusCodes
  9. def OK: play.api.mvc.Results.Status

    Permalink
    Definition Classes
    StatusCodes → StatusCodes
  10. def Options: Method

    Permalink
    Definition Classes
    Methods → Methods
  11. def Patch: Method

    Permalink
    Definition Classes
    Methods → Methods
  12. def Post: Method

    Permalink
    Definition Classes
    Methods → Methods
  13. def Put: Method

    Permalink
    Definition Classes
    Methods → Methods
  14. def Unauthorized: play.api.mvc.Results.Status

    Permalink
    Definition Classes
    StatusCodes → StatusCodes
  15. implicit lazy val applicativeRequestExtractor: Applicative[RequestExtractor]

    Permalink
    Definition Classes
    Urls
  16. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  17. implicit def booleanQueryString: QueryStringParam[Boolean]

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

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

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

    Permalink
    Definition Classes
    Urls → Urls
  21. 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
  22. implicit def doubleQueryString: QueryStringParam[Double]

    Permalink
    Definition Classes
    Urls
  23. implicit def doubleSegment: Segment[Double]

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

    Permalink
    Definition Classes
    Urls
  25. lazy val emptyHeaders: RequestHeaders[Unit]

    Permalink

    Always succeeds in extracting no information from the headers

    Always succeeds in extracting no information from the headers

    Definition Classes
    Endpoints → Requests
  26. lazy val emptyRequest: BodyParser[Unit]

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

    Permalink

    A successful HTTP response (status code 200) with no entity

    A successful HTTP response (status code 200) with no entity

    Definition Classes
    Endpoints → Responses
  28. def endpoint[A, B](request: Request[A], response: Response[B], summary: Documentation, description: Documentation, tags: List[String]): Endpoint[A, B]

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

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

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

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  32. implicit lazy val functorRequestExtractor: Functor[RequestExtractor]

    Permalink
    Definition Classes
    Urls
  33. 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
  34. final def getClass(): Class[_]

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

    Permalink
    Definition Classes
    AnyRef → Any
  36. def header(name: String, docs: Option[String]): (Headers) ⇒ Either[Result, String]

    Permalink
    Definition Classes
    Endpoints → Requests
  37. lazy val htmlResponse: Response[Html]

    Permalink

    A successful HTTP response (status code 200) with an HTML entity

    A successful HTTP response (status code 200) with an HTML entity

    Definition Classes
    Endpoints
  38. implicit def intQueryString: QueryStringParam[Int]

    Permalink
    Definition Classes
    Urls
  39. implicit def intSegment: Segment[Int]

    Permalink
    Definition Classes
    Urls
  40. implicit lazy val invariantFunctorRequest: play.api.libs.functional.InvariantFunctor[Request]

    Permalink
    Definition Classes
    Endpoints
  41. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  42. def jsonRequest[A](docs: Documentation)(implicit codec: Codec[String, A]): RequestEntity[A]

    Permalink
    Definition Classes
    JsonEntitiesFromCodec → JsonEntities
  43. def jsonResponse[A](docs: Documentation)(implicit codec: Codec[String, A]): Response[A]

    Permalink
    Definition Classes
    JsonEntitiesFromCodec → JsonEntities
  44. implicit def longQueryString: QueryStringParam[Long]

    Permalink
    Definition Classes
    Urls
  45. implicit def longSegment: Segment[Long]

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

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

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

    Permalink
    Definition Classes
    AnyRef
  49. def optHeader(name: String, docs: Option[String]): (Headers) ⇒ Either[Result, Option[String]]

    Permalink
    Definition Classes
    Endpoints → Requests
  50. implicit def optionalQueryStringParam[A](implicit param: QueryStringParam[A]): QueryStringParam[Option[A]]

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

    Permalink
    Definition Classes
    Urls
  52. implicit lazy val pathPartialInvariantFunctor: PartialInvariantFunctor[Path]

    Permalink
    Definition Classes
    Urls → Urls
  53. 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
  54. 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
  55. def qs[A](name: String, docs: Documentation)(implicit value: QueryStringParam[A]): QueryString[A]

    Permalink
    Definition Classes
    Urls → Urls
  56. implicit lazy val queryStringParamPartialInvFunctor: PartialInvariantFunctor[QueryStringParam]

    Permalink
    Definition Classes
    Urls → Urls
  57. implicit lazy val queryStringPartialInvFunctor: PartialInvariantFunctor[QueryString]

    Permalink
    Definition Classes
    Urls → Urls
  58. def redirect[A](other: ⇒ Endpoint[A, _])(args: A): Response[Unit]

    Permalink

    other

    Endpoint to redirect to

    args

    Arguments to pass to the endpoint to generate its URL

    returns

    An HTTP response redirecting to another endpoint (using 303 code status).

    Definition Classes
    Endpoints
  59. def remainingSegments(name: String, docs: Documentation): Path[String]

    Permalink
    Definition Classes
    Urls → Urls
  60. implicit def repeatedQueryStringParam[A, CC[X] <: Iterable[X]](implicit param: QueryStringParam[A], factory: scala.collection.compat.Factory[A, CC[A]]): QueryStringParam[CC[A]]

    Permalink
    Definition Classes
    Urls → Urls
  61. implicit def reqEntityInvFunctor: InvariantFunctor[RequestEntity]

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

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

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

    Permalink

    Decodes a request that uses the POST HTTP verb.

    Decodes a request that uses the POST HTTP verb.

    url

    Request URL

    entity

    Request entity

    headers

    Request headers

    Definition Classes
    Endpoints → Requests
  65. def routesFromEndpoints(endpoints: ToPlayHandler*): PartialFunction[RequestHeader, Handler]

    Permalink

    Builds a Play router out of endpoint definitions.

    Builds a Play router out of endpoint definitions.

    val routes = routesFromEndpoints(
      inc.implementedBy(x => x + 1)
    )
    Definition Classes
    Endpoints
  66. def segment[A](name: String, docs: Documentation)(implicit A: Segment[A]): Path[A]

    Permalink
    Definition Classes
    Urls → Urls
  67. implicit lazy val segmentPartialInvFunctor: PartialInvariantFunctor[Segment]

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

    Permalink
    Definition Classes
    Urls → Urls
  69. implicit lazy val stringQueryString: QueryStringParam[String]

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

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

    Permalink
    Definition Classes
    AnyRef
  72. def textRequest(docs: Documentation): BodyParser[String]

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

    Permalink

    A successful HTTP response (status code 200) with string entity

    A successful HTTP response (status code 200) with string entity

    Definition Classes
    Endpoints → Responses
  74. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  75. implicit lazy val urlPartialInvFunctor: PartialInvariantFunctor[Url]

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

    Permalink
    Definition Classes
    Urls → Urls
  77. val utf8Name: String

    Permalink
    Definition Classes
    Urls
  78. implicit def uuidQueryString: QueryStringParam[UUID]

    Permalink
    Definition Classes
    Urls
  79. implicit def uuidSegment: Segment[UUID]

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

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

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

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

    Permalink

    A response encoder that maps None to an empty HTTP result with status 404

    A response encoder that maps None to an empty HTTP result with status 404

    Definition Classes
    Endpoints → Responses

Inherited from JsonEntities

Inherited from Endpoints

Inherited from StatusCodes

Inherited from Methods

Inherited from Urls

Inherited from algebra.Endpoints

Inherited from Responses

Inherited from algebra.StatusCodes

Inherited from Requests

Inherited from algebra.Methods

Inherited from algebra.Urls

Inherited from AnyRef

Inherited from Any

Ungrouped