Package

io.finch

response

Permalink

package response

This package enables a reasonable approach of building HTTP responses using the ResponseBuilder abstraction. The ResponseBuilder provides an immutable way of building concrete Response instances by specifying their status, headers and cookies. There are plenty of predefined builders named by HTTP statuses, i.e., Ok, Created, NotFound. Thus, the typical use case of the ResponseBuilder abstraction involves usage of concrete builder instead of abstract ResponseBuilder itself.

val ok: Response = Ok("Hello, World!")

In addition to text/plain responses, the ResponseBuilder is able to build any response, whose content-type is specified by an implicit type-class EncodeResponse instance. In fact, any type A may be passed to a RequestReader if there is a corresponding EncodeRequest[A] instance available in the scope.

implicit val encodeBigInt = EncodeResponse[BigInt]("text/plain") { _.toString }
val ok: Response = Ok(BigInt(100))
Linear Supertypes
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. response
  2. AnyRef
  3. Any
  1. Hide All
  2. Show all
Visibility
  1. Public
  2. All

Type Members

  1. trait EncodeAnyResponse extends AnyRef

    Permalink

    An abstraction that is responsible for encoding the response of a generic type.

  2. trait EncodeResponse[-A] extends AnyRef

    Permalink

    An abstraction that is responsible for encoding the response of type A.

  3. case class ResponseBuilder(status: Status, headers: Map[String, String] = Map.empty[String, String], cookies: Seq[Cookie] = Seq.empty[Cookie], contentType: Option[String] = None, charset: Option[String] = None) extends Product with Serializable

    Permalink

    An abstraction that is responsible for building HTTP responses.

    An abstraction that is responsible for building HTTP responses.

    status

    the HTTP response status

    headers

    the HTTP headers map

    cookies

    the HTTP cookies list

  4. class TurnIntoHttp[A] extends Service[A, Response]

    Permalink

Value Members

  1. object Accepted extends ResponseBuilder

    Permalink
  2. object BadGateway extends ResponseBuilder

    Permalink
  3. object BadRequest extends ResponseBuilder

    Permalink
  4. object Conflict extends ResponseBuilder

    Permalink
  5. object Continue extends ResponseBuilder

    Permalink
  6. object Created extends ResponseBuilder

    Permalink
  7. object EncodeResponse

    Permalink
  8. object ExpectationFailed extends ResponseBuilder

    Permalink
  9. object FailedDependency extends ResponseBuilder

    Permalink
  10. object Forbidden extends ResponseBuilder

    Permalink
  11. object Found extends ResponseBuilder

    Permalink
  12. object GatewayTimeout extends ResponseBuilder

    Permalink
  13. object Gone extends ResponseBuilder

    Permalink
  14. object HttpVersionNotSupported extends ResponseBuilder

    Permalink
  15. object InsufficientStorage extends ResponseBuilder

    Permalink
  16. object InternalServerError extends ResponseBuilder

    Permalink
  17. object LengthRequired extends ResponseBuilder

    Permalink
  18. object Locked extends ResponseBuilder

    Permalink
  19. object MethodNotAllowed extends ResponseBuilder

    Permalink
  20. object MovedPermanently extends ResponseBuilder

    Permalink
  21. object MultiStatus extends ResponseBuilder

    Permalink
  22. object MultipleChoices extends ResponseBuilder

    Permalink
  23. object NoContent extends ResponseBuilder

    Permalink
  24. object NonAuthoritativeInformation extends ResponseBuilder

    Permalink
  25. object NotAcceptable extends ResponseBuilder

    Permalink
  26. object NotExtended extends ResponseBuilder

    Permalink
  27. object NotFound extends ResponseBuilder

    Permalink
  28. object NotImplemented extends ResponseBuilder

    Permalink
  29. object NotModified extends ResponseBuilder

    Permalink
  30. object Ok extends ResponseBuilder

    Permalink
  31. object PartialContent extends ResponseBuilder

    Permalink
  32. object PaymentRequired extends ResponseBuilder

    Permalink
  33. object PreconditionFailed extends ResponseBuilder

    Permalink
  34. object PreconditionRequired extends ResponseBuilder

    Permalink
  35. object Processing extends ResponseBuilder

    Permalink
  36. object ProxyAuthenticationRequired extends ResponseBuilder

    Permalink
  37. object Redirect

    Permalink

    A factory for Redirecting to other URLs.

  38. object RequestEntityTooLarge extends ResponseBuilder

    Permalink
  39. object RequestTimeOut extends ResponseBuilder

    Permalink
  40. object RequestUriTooLong extends ResponseBuilder

    Permalink
  41. object RequestedRangeNotSatisfiable extends ResponseBuilder

    Permalink
  42. object ResetContent extends ResponseBuilder

    Permalink
  43. object SeeOther extends ResponseBuilder

    Permalink
  44. object ServiceUnavailable extends ResponseBuilder

    Permalink
  45. object TemporaryRedirect extends ResponseBuilder

    Permalink
  46. object TooManyRequests extends ResponseBuilder

    Permalink
  47. object TurnIntoHttp

    Permalink

    A service that converts an encoded object into HTTP response with status OK using an implicit EncodeResponse.

  48. object Unauthorized extends ResponseBuilder

    Permalink
  49. object UnorderedCollection extends ResponseBuilder

    Permalink
  50. object UnprocessableEntity extends ResponseBuilder

    Permalink
  51. object UnsupportedMediaType extends ResponseBuilder

    Permalink
  52. object UpgradeRequired extends ResponseBuilder

    Permalink
  53. object UseProxy extends ResponseBuilder

    Permalink
  54. object VariantAlsoNegotiates extends ResponseBuilder

    Permalink

Inherited from AnyRef

Inherited from Any

Ungrouped