Trait

endpoints.akkahttp.server

Endpoints

Related Doc: package server

Permalink

trait Endpoints extends algebra.Endpoints with EndpointsWithCustomErrors with BuiltInErrors

Interpreter for algebra.Endpoints that performs routing using Akka-HTTP and uses algebra.BuiltInErrors to model client and server errors.

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

Type Members

  1. case class CallbackDocs extends Product with Serializable

    Permalink
    Definition Classes
    EndpointsWithCustomErrors
  2. type CallbacksDocs = Map[String, CallbackDocs]

    Permalink
    Definition Classes
    EndpointsWithCustomErrors
  3. type ClientErrors = Invalid

    Permalink
    Definition Classes
    BuiltInErrors → Errors
  4. case class Endpoint[A, B](request: Request[A], response: Response[B]) extends Product with Serializable

    Permalink
    Definition Classes
    EndpointsWithCustomErrors
  5. case class EndpointDocs extends Product with Serializable

    Permalink
    Definition Classes
    EndpointsWithCustomErrors
  6. implicit class InvariantFunctorSyntax[A, F[_]] extends AnyRef

    Permalink
    Definition Classes
    InvariantFunctorSyntax
  7. type Method = HttpMethod

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

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

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

    Permalink
    Definition Classes
    Urls
  11. trait QueryString[T] extends AnyRef

    Permalink
    Definition Classes
    Urls
  12. type QueryStringParam[T] = (String, Map[String, Seq[String]]) ⇒ Validated[T]

    Permalink

    Given a parameter name and a query string content, returns a decoded parameter value of type T, or Invalid if decoding failed

    Given a parameter name and a query string content, returns a decoded parameter value of type T, or Invalid if decoding failed

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

    Permalink
    Definition Classes
    Urls
  14. type Request[A] = Directive[(A)]

    Permalink
    Definition Classes
    EndpointsWithCustomErrors → Requests
  15. type RequestEntity[A] = Directive[(A)]

    Permalink
    Definition Classes
    EndpointsWithCustomErrors → Requests
  16. type RequestHeaders[A] = Directive[(A)]

    Permalink
    Definition Classes
    EndpointsWithCustomErrors → Requests
  17. type Response[A] = (A) ⇒ Route

    Permalink
    Definition Classes
    EndpointsWithCustomErrors → Responses
  18. type ResponseEntity[A] = Marshaller[A, MessageEntity]

    Permalink
    Definition Classes
    EndpointsWithCustomErrors → Responses
  19. implicit class ResponseSyntax[A] extends AnyRef

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

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

    Permalink
    Definition Classes
    SemigroupalSyntax
  22. type ServerError = Throwable

    Permalink
    Definition Classes
    BuiltInErrors → Errors
  23. type StatusCode = akka.http.scaladsl.model.StatusCode

    Permalink
    Definition Classes
    StatusCodes → StatusCodes
  24. trait Url[A] extends AnyRef

    Permalink
    Definition Classes
    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. def Accepted: Success

    Permalink
    Definition Classes
    StatusCodes → StatusCodes
  5. def BadRequest: ClientError

    Permalink
    Definition Classes
    StatusCodes → StatusCodes
  6. def Created: Success

    Permalink
    Definition Classes
    StatusCodes → StatusCodes
  7. def Delete: HttpMethod

    Permalink
    Definition Classes
    Methods → Methods
  8. def Forbidden: ClientError

    Permalink
    Definition Classes
    StatusCodes → StatusCodes
  9. def Get: HttpMethod

    Permalink
    Definition Classes
    Methods → Methods
  10. def InternalServerError: akka.http.scaladsl.model.StatusCodes.ServerError

    Permalink
    Definition Classes
    StatusCodes → StatusCodes
  11. def NoContent: Success

    Permalink
    Definition Classes
    StatusCodes → StatusCodes
  12. def NotFound: ClientError

    Permalink
    Definition Classes
    StatusCodes → StatusCodes
  13. def NotImplemented: akka.http.scaladsl.model.StatusCodes.ServerError

    Permalink
    Definition Classes
    StatusCodes → StatusCodes
  14. def OK: Success

    Permalink
    Definition Classes
    StatusCodes → StatusCodes
  15. def Options: HttpMethod

    Permalink
    Definition Classes
    Methods → Methods
  16. def Patch: HttpMethod

    Permalink
    Definition Classes
    Methods → Methods
  17. def Post: HttpMethod

    Permalink
    Definition Classes
    Methods → Methods
  18. def Put: HttpMethod

    Permalink
    Definition Classes
    Methods → Methods
  19. def Unauthorized: ClientError

    Permalink
    Definition Classes
    StatusCodes → StatusCodes
  20. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  21. final def badRequest(docs: Documentation): Response[ClientErrors]

    Permalink
    Definition Classes
    Responses
  22. implicit def booleanQueryString: QueryStringParam[Boolean]

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

    Permalink
    Definition Classes
    Urls → Urls
  24. def choiceResponse[A, B](responseA: Response[A], responseB: Response[B]): Response[Either[A, B]]

    Permalink
    Definition Classes
    EndpointsWithCustomErrors → Responses
  25. lazy val clientErrorsResponse: Response[ClientErrors]

    Permalink
    Definition Classes
    Errors
  26. def clientErrorsResponseEntity: ResponseEntity[Invalid]

    Permalink
    Definition Classes
    BuiltInErrors → BuiltInErrors → Errors
  27. final def clientErrorsToInvalid(clientErrors: ClientErrors): Invalid

    Permalink
    Definition Classes
    BuiltInErrors → Errors
  28. def clone(): AnyRef

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

    Permalink
    Definition Classes
    Urls → Urls
  30. def convToDirective1(directive: Directive0): Directive1[Unit]

    Permalink
    Attributes
    protected
    Definition Classes
    Urls
  31. final def delete[UrlP, HeadersP, Out](url: Url[UrlP], docs: Documentation, headers: RequestHeaders[HeadersP])(implicit tuplerUH: Tupler.Aux[UrlP, HeadersP, Out]): Request[Out]

    Permalink
    Definition Classes
    Requests
  32. lazy val directive1InvFunctor: InvariantFunctor[Directive1]

    Permalink
    Definition Classes
    EndpointsWithCustomErrors
  33. implicit def doubleQueryString: QueryStringParam[Double]

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

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

    Permalink
    Definition Classes
    Urls
  36. def emptyHeaders: RequestHeaders[Unit]

    Permalink
    Definition Classes
    EndpointsWithCustomErrors → Requests
  37. def emptyRequest: RequestEntity[Unit]

    Permalink
    Definition Classes
    EndpointsWithCustomErrors → Requests
  38. def emptyResponse: ResponseEntity[Unit]

    Permalink
    Definition Classes
    EndpointsWithCustomErrors → Responses
  39. def endpoint[A, B](request: Request[A], response: Response[B], docs: EndpointDocs = EndpointDocs()): Endpoint[A, B]

    Permalink
    Definition Classes
    EndpointsWithCustomErrors → EndpointsWithCustomErrors
  40. final def eq(arg0: AnyRef): Boolean

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

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

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  45. def handleClientErrors(invalid: Invalid): StandardRoute

    Permalink

    This method is called by endpoints when decoding a request failed.

    This method is called by endpoints when decoding a request failed.

    The provided implementation calls clientErrorsResponse to complete with a response containing the errors.

    This method can be overridden to customize the error reporting logic.

    Definition Classes
    Urls
  46. def handleServerError(throwable: Throwable): StandardRoute

    Permalink

    This method is called by endpoints when an exception is thrown during request processing.

    This method is called by endpoints when an exception is thrown during request processing.

    The provided implementation uses serverErrorResponse to complete with a response containing the error message.

    This method can be overridden to customize the error reporting logic.

    Definition Classes
    EndpointsWithCustomErrors
  47. def hashCode(): Int

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

    Permalink
    Definition Classes
    EndpointsWithCustomErrors → Requests
  49. implicit def intQueryString: QueryStringParam[Int]

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

    Permalink
    Definition Classes
    Urls
  51. final def internalServerError(docs: Documentation): Response[ServerError]

    Permalink
    Definition Classes
    Responses
  52. final def invalidToClientErrors(invalid: Invalid): ClientErrors

    Permalink
    Definition Classes
    BuiltInErrors → Errors
  53. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  54. def joinDirectives[T1, T2](dir1: Directive1[T1], dir2: Directive1[T2])(implicit tupler: Tupler[T1, T2]): Directive1[Out]

    Permalink

    Simpler alternative to Directive.&() method

    Simpler alternative to Directive.&() method

    Attributes
    protected
    Definition Classes
    Urls
  55. implicit def longQueryString: QueryStringParam[Long]

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

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

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

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

    Permalink
    Definition Classes
    AnyRef
  60. final def ok[A](entity: ResponseEntity[A], docs: Documentation): Response[A]

    Permalink
    Definition Classes
    Responses
  61. def optHeader(name: String, docs: Documentation): RequestHeaders[Option[String]]

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

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

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

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

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

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

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

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

    Permalink
    Definition Classes
    Urls → Urls
  70. def remainingSegments(name: String, docs: Documentation): Path[String]

    Permalink
    Definition Classes
    Urls → Urls
  71. 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
  72. implicit lazy val reqEntityInvFunctor: InvariantFunctor[RequestEntity]

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

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

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

    Permalink
    Definition Classes
    EndpointsWithCustomErrors → Requests
  76. def response[A](statusCode: StatusCode, entity: ResponseEntity[A], docs: Documentation = None): Response[A]

    Permalink
    Definition Classes
    EndpointsWithCustomErrors → Responses
  77. implicit lazy val responseInvFunctor: InvariantFunctor[Response]

    Permalink
    Definition Classes
    EndpointsWithCustomErrors → Responses
  78. def segment[A](name: String, docs: Documentation)(implicit s: Segment[A]): Path[A]

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

    Permalink
    Definition Classes
    Urls → Urls
  80. lazy val serverErrorResponse: Response[ServerError]

    Permalink
    Definition Classes
    Errors
  81. def serverErrorResponseEntity: ResponseEntity[Throwable]

    Permalink
    Definition Classes
    BuiltInErrors → BuiltInErrors → Errors
  82. final def serverErrorToThrowable(serverError: ServerError): Throwable

    Permalink
    Definition Classes
    BuiltInErrors → Errors
  83. def staticPathSegment(segment: String): Path[Unit]

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

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

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

    Permalink
    Definition Classes
    AnyRef
  87. def textRequest: RequestEntity[String]

    Permalink
    Definition Classes
    EndpointsWithCustomErrors → Requests
  88. def textResponse: ResponseEntity[String]

    Permalink
    Definition Classes
    EndpointsWithCustomErrors → Responses
  89. final def throwableToServerError(throwable: Throwable): ServerError

    Permalink
    Definition Classes
    BuiltInErrors → Errors
  90. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  91. def tryParseString[A](type: String)(parse: (String) ⇒ A): (String) ⇒ Validated[A]

    Permalink
    Definition Classes
    Urls
  92. implicit lazy val urlPartialInvFunctor: PartialInvariantFunctor[Url]

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

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

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

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

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

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

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

    Permalink
    Definition Classes
    Responses

Inherited from BuiltInErrors

Inherited from EndpointsWithCustomErrors

Inherited from Methods

Inherited from Urls

Inherited from StatusCodes

Inherited from algebra.Endpoints

Inherited from algebra.BuiltInErrors

Inherited from Errors

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