Packages

p

org

http4s

package http4s

Source
package.scala
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. http4s
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. final case class AttributeEntry[T](key: AttributeKey[T], value: T) extends Product with Serializable

    A map entry where key is constrained to only be associated with a fixed value of type T.

  2. final class AttributeKey[T] extends AnyRef

    A key in an AttributeMap that constrains its associated value to be of type T.

    A key in an AttributeMap that constrains its associated value to be of type T. The key is uniquely defined by its reference: there are no duplicate keys, even those with the same name and type.

  3. final class AttributeMap extends AnyRef

    An immutable map where an AttributeKey for a fixed type T can only be associated with values of type T.

    An immutable map where an AttributeKey for a fixed type T can only be associated with values of type T. Because the equality of keys is based on reference, it is therefore possible for this map to contain mappings for keys with the same label and same types.

  4. type AuthScheme = CaseInsensitiveString
  5. final case class AuthedRequest[F[_], A](authInfo: A, req: Request[F]) extends Product with Serializable
  6. type AuthedService[T, F[_]] = Kleisli[[β$1$]OptionT[F, β$1$], AuthedRequest[F, T], Response[F]]

    We need to change the order of type parameters to make partial unification trigger.

    We need to change the order of type parameters to make partial unification trigger. See https://github.com/http4s/http4s/issues/1506

  7. final case class BasicCredentials(username: String, password: String) extends Product with Serializable
  8. sealed trait CacheDirective extends Product with Renderable
  9. type Callback[A] = (Either[Throwable, A]) ⇒ Unit
  10. final case class Challenge(scheme: String, realm: String, params: Map[String, String] = Map.empty) extends Renderable with Product with Serializable
  11. final case class Charset extends Renderable with Product with Serializable
  12. sealed abstract class CharsetRange extends HasQValue with Renderable
  13. trait CharsetRangeInstances extends AnyRef
  14. trait ClientTypes extends AnyRef
  15. class ContentCoding extends HasQValue with Ordered[ContentCoding] with Renderable
  16. sealed abstract class Credentials extends Renderable
  17. trait DecodeFailure extends RuntimeException with MessageFailure

    Indicates a problem decoding a Message.

    Indicates a problem decoding a Message. This may either be a problem with the entity headers or with the entity itself.

  18. type DecodeResult[F[_], A] = EitherT[F, DecodeFailure, A]
  19. final case class Entity[+F[_]](body: EntityBody[F], length: Option[Long] = None) extends Product with Serializable
  20. type EntityBody[+F[_]] = Stream[F, Byte]
  21. trait EntityDecoder[F[_], T] extends AnyRef

    A type that can be used to decode a Message EntityDecoder is used to attempt to decode a Message returning the entire resulting A.

    A type that can be used to decode a Message EntityDecoder is used to attempt to decode a Message returning the entire resulting A. If an error occurs it will result in a failed effect. The default decoders provided here are not streaming, but one could implement a streaming decoder by having the value of A be some kind of streaming construct.

    T

    result type produced by the decoder

    Annotations
    @implicitNotFound( ... )
  22. trait EntityDecoderInstances extends AnyRef

    Implementations of the EntityDecoder instances

  23. trait EntityEncoder[F[_], A] extends AnyRef
    Annotations
    @implicitNotFound( ... )
  24. trait EntityEncoderInstances extends EntityEncoderInstances0
  25. trait EntityEncoderInstances0 extends AnyRef
  26. type EventStream[F[_]] = Stream[F, ServerSentEvent]

    A stream of server-sent events

  27. trait HasQValue extends AnyRef
  28. sealed trait Header extends Renderable with Product

    Abstract representation o the HTTP header

    Abstract representation o the HTTP header

    See also

    org.http4s.HeaderKey

  29. sealed trait HeaderKey extends AnyRef
  30. final class Headers extends Iterable[Header] with IterableLike[Header, Headers]

    A collection of HTTP Headers

  31. type Http[F[_], G[_]] = Kleisli[F, Request[G], Response[G]]

    A kleisli with a Request input and a Response output.

    A kleisli with a Request input and a Response output. This type is useful for writing middleware that are polymorphic over the return type F.

  32. trait Http4s extends Http4sInstances with Http4sFunctions with AllSyntax
  33. trait Http4sFunctions extends QValueFunctions with UriFunctions
  34. trait Http4sInstances extends EntityDecoderInstances with HttpVersionInstances with EntityEncoderInstances with CharsetRangeInstances with QValueInstances with MethodInstances with StatusInstances
  35. final case class Http4sVersion(major: Int, minor: Int) extends Product with Serializable
  36. type HttpApp[F[_]] = Kleisli[F, Request[F], Response[F]]

    A kleisli with a Request input and a Response output, such that the response effect is the same as the request and response bodies'.

    A kleisli with a Request input and a Response output, such that the response effect is the same as the request and response bodies'. An HTTP app is total on its inputs. An HTTP app may be run by a server, and a client can be converted to or from an HTTP app.

  37. trait HttpCodec[A] extends Renderer[A]
  38. class HttpDate extends Renderable with Ordered[HttpDate]

    An HTTP-date value represents time as an instance of Coordinated Universal Time (UTC).

    An HTTP-date value represents time as an instance of Coordinated Universal Time (UTC). It expresses time at a resolution of one second. By using it over java.time.Instant in the model, we assure that if two headers render equally, their values are equal.

    See also

    https://tools.ietf.org/html/rfc7231#page65

  39. type HttpRoutes[F[_]] = Kleisli[[β$0$]OptionT[F, β$0$], Request[F], Response[F]]

    A kleisl with a Request input and a Response output, such that the response effect is an optional inside the effect of the request and response bodies.

    A kleisl with a Request input and a Response output, such that the response effect is an optional inside the effect of the request and response bodies. HTTP routes can conveniently be constructed from a partial function and combined as a SemigroupK.

  40. final case class HttpVersion extends Renderable with Ordered[HttpVersion] with Product with Serializable

    An HTTP version, as seen on the start line of an HTTP request or response.

    An HTTP version, as seen on the start line of an HTTP request or response.

    See also

    [http://tools.ietf.org/html/rfc7230#section-2.6 RFC 7320, Section 2.6

  41. trait HttpVersionInstances extends AnyRef
  42. final case class InvalidBodyException(msg: String) extends Exception with NoStackTrace with Product with Serializable

    Exception dealing with invalid body

    Exception dealing with invalid body

    msg

    description if what makes the body invalid

  43. final case class InvalidMessageBodyFailure(details: String, cause: Option[Throwable] = None) extends RuntimeException with MessageBodyFailure with Product with Serializable

    Indicates a semantic error decoding the body of an HTTP Message.

  44. final case class InvalidResponseException(msg: String) extends Exception with NoStackTrace with Product with Serializable

    Exception dealing with invalid response

    Exception dealing with invalid response

    msg

    description if what makes the response invalid

  45. final case class LanguageTag(primaryTag: String, q: QValue = QValue.One, subTags: Seq[String] = Nil) extends Renderable with Product with Serializable
  46. final case class MalformedMessageBodyFailure(details: String, cause: Option[Throwable] = None) extends RuntimeException with MessageBodyFailure with Product with Serializable

    Indicates an syntactic error decoding the body of an HTTP Message.

  47. sealed class MediaRange extends AnyRef
  48. sealed class MediaType extends MediaRange
  49. final case class MediaTypeMismatch(messageType: MediaType, expected: Set[MediaRange]) extends UnsupportedMediaTypeFailure with Product with Serializable

    Indicates that no EntityDecoder matches the MediaType of the Message being decoded

  50. final case class MediaTypeMissing(expected: Set[MediaRange]) extends UnsupportedMediaTypeFailure with Product with Serializable

    Indicates that a Message attempting to be decoded has no MediaType and no EntityDecoder was lenient enough to accept it.

  51. sealed trait Message[F[_]] extends MessageOps[F]

    Represents a HTTP Message.

    Represents a HTTP Message. The interesting subclasses are Request and Response while most of the functionality is found in MessageOps and ResponseOps

    See also

    MessageOps, ResponseOps

  52. trait MessageBodyFailure extends RuntimeException with DecodeFailure

    Indicates a problem decoding a Message body.

  53. trait MessageFailure extends RuntimeException

    Indicates a failure to handle an HTTP Message.

  54. trait MessageOps[F[_]] extends Any
  55. sealed abstract case class Method extends Renderable with Semantics with Product with Serializable

    An HTTP method.

    An HTTP method.

    See also

    [http://tools.ietf.org/html/rfc7231#section-4 RFC7321, Section 4]

    [http://www.iana.org/assignments/http-methods/http-methods.xhtml IANA HTTP Method Registry]

  56. trait MethodInstances extends AnyRef
  57. final case class ParseFailure(sanitized: String, details: String) extends RuntimeException with MessageFailure with NoStackTrace with Product with Serializable

    Indicates an error parsing an HTTP Message.

    Indicates an error parsing an HTTP Message.

    sanitized

    May safely be displayed to a client to describe an error condition. Should not echo any part of a Request.

    details

    Contains any relevant details omitted from the sanitized version of the error. This may freely echo a Request.

  58. type ParseResult[+A] = Either[ParseFailure, A]
  59. final class QValue extends AnyVal with Ordered[QValue]

    A Quality Value.

    A Quality Value. Represented as thousandths for an exact representation rounded to three decimal places.

    See also

    RFC 2616, Section 3.9

  60. trait QValueFunctions extends AnyRef
  61. trait QValueInstances extends AnyRef
  62. final class Query extends IndexedSeq[KeyValue] with IndexedSeqOptimized[KeyValue, Query] with QueryOps with Renderable

    Collection representation of a query string

    Collection representation of a query string

    It is a indexed sequence of key and maybe a value pairs which maps precisely to a query string, modulo the identity of separators.

    When rendered, the resulting String will have the pairs separated by '&' while the key is separated from the value with '='

  63. trait QueryOps extends AnyRef
  64. trait QueryParam[T] extends AnyRef

    type class defining the key of a query parameter Usually used in conjunction with QueryParamEncoder and QueryParamDecoder

  65. trait QueryParamDecoder[T] extends AnyRef

    Type class defining how to decode a QueryParameterValue into a T

    Type class defining how to decode a QueryParameterValue into a T

    See also

    QueryParamCodecLaws

  66. trait QueryParamEncoder[T] extends AnyRef

    Type class defining how to encode a T as a QueryParameterValues

    Type class defining how to encode a T as a QueryParameterValues

    See also

    QueryParamCodecLaws

  67. trait QueryParamKeyLike[T] extends AnyRef
  68. final case class QueryParameterKey(value: String) extends AnyVal with Product with Serializable
  69. final case class QueryParameterValue(value: String) extends AnyVal with Product with Serializable
  70. final case class RangeUnit(value: String) extends Renderable with Product with Serializable
  71. sealed abstract case class Request[F[_]] extends Message[F] with RequestOps[F] with Product with Serializable

    Representation of an incoming HTTP message

    Representation of an incoming HTTP message

    A Request encapsulates the entirety of the incoming HTTP request including the status line, headers, and a possible request body.

  72. final case class RequestCookie(name: String, content: String) extends Renderable with Product with Serializable
  73. class RequestCookieJar extends Iterable[RequestCookie] with IterableLike[RequestCookie, RequestCookieJar]
  74. trait RequestOps[F[_]] extends MessageOps[F]
  75. final case class Response[F[_]](status: Status = Status.Ok, httpVersion: HttpVersion = HttpVersion.`HTTP/1.1`, headers: Headers = Headers.empty, body: EntityBody[F] = EmptyBody, attributes: AttributeMap = AttributeMap.empty) extends Message[F] with ResponseOps[F] with Product with Serializable

    Representation of the HTTP response to send back to the client

    Representation of the HTTP response to send back to the client

    status

    Status code and message

    headers

    Headers containing all response headers

    body

    EntityBody[F] representing the possible body of the response

    attributes

    AttributeMap containing additional parameters which may be used by the http4s backend for additional processing such as java.io.File object

  76. final case class ResponseCookie(name: String, content: String, expires: Option[HttpDate] = None, maxAge: Option[Long] = None, domain: Option[String] = None, path: Option[String] = None, secure: Boolean = false, httpOnly: Boolean = false, extension: Option[String] = None) extends Renderable with Product with Serializable
  77. trait ResponseOps[F[_]] extends MessageOps[F]
  78. final case class ServerSentEvent(data: String, eventType: Option[String] = None, id: Option[EventId] = None, retry: Option[Long] = None) extends Renderable with Product with Serializable
  79. final case class ServerSoftware(product: String, productVersion: Option[String] = None, comment: Option[String] = None) extends Product with Serializable
  80. sealed abstract case class Status extends Ordered[Status] with Renderable with Product with Serializable

    Representation of the HTTP response code and reason

    Representation of the HTTP response code and reason

    Note: the reason is not important to the protocol and is not considered in equality checks.

    See also

    [http://tools.ietf.org/html/rfc7231#section-6 RFC7231, Section 6]

    [http://www.iana.org/assignments/http-status-codes/http-status-codes.xhtml IANA Status Code Registry]

  81. trait StatusInstances extends AnyRef
  82. class TransferCoding extends Ordered[TransferCoding] with Renderable
  83. sealed abstract class UnsupportedMediaTypeFailure extends RuntimeException with DecodeFailure with NoStackTrace

    Indicates that a Message came with no supported MediaType.

  84. final case class Uri(scheme: Option[Scheme] = None, authority: Option[Authority] = None, path: Path = "", query: Query = Query.empty, fragment: Option[Fragment] = None) extends QueryOps with Renderable with Product with Serializable

    Representation of the Request URI

    Representation of the Request URI

    scheme

    optional Uri Scheme. eg, http, https

    authority

    optional Uri Authority. eg, localhost:8080, www.foo.bar

    path

    url-encoded string representation of the path component of the Uri.

    query

    optional Query. url-encoded.

    fragment

    optional Uri Fragment. url-encoded.

  85. trait UriFunctions extends AnyRef
  86. final case class UriTemplate(scheme: Option[Scheme] = None, authority: Option[Authority] = None, path: Path = Nil, query: UriTemplate.Query = Nil, fragment: Fragment = Nil) extends Product with Serializable

    Simple representation of a URI Template that can be rendered as RFC6570 conform string.

    Simple representation of a URI Template that can be rendered as RFC6570 conform string.

    This model reflects only a subset of RFC6570.

    Level 1 and Level 2 are completely modeled and Level 3 features are limited to:

    • Path segments, slash-prefixed
    • Form-style query, ampersand-separated
    • Fragment expansion
  87. final class UrlForm extends AnyVal
  88. type Http4sSyntax = AllSyntax
    Annotations
    @deprecated
    Deprecated

    (Since version 0.16) Moved to org.http4s.syntax.AllSyntax

  89. type HttpService[F[_]] = Kleisli[[β$0$]OptionT[F, β$0$], Request[F], Response[F]]
    Annotations
    @deprecated
    Deprecated

    (Since version 0.19) Deprecated in favor of HttpRoutes

  90. type Service[F[_], A, B] = Kleisli[F, A, B]
    Annotations
    @deprecated
    Deprecated

    (Since version 0.18) Deprecated in favor of just using Kleisli

Value Members

  1. val ApiVersion: Http4sVersion
  2. val DefaultCharset: Charset
  3. val EmptyBody: EntityBody[Nothing]
  4. object AttributeKey
  5. object AttributeMap
  6. object AuthScheme
  7. object AuthedRequest extends Serializable
  8. object AuthedService
  9. object BasicCredentials extends Serializable
  10. object BuildInfo extends Product with Serializable

    This object was generated by sbt-buildinfo.

  11. object CacheDirective

    A registry of cache-directives, as listed in http://www.iana.org/assignments/http-cache-directives/http-cache-directives.xhtml

  12. object Charset extends Serializable
  13. object CharsetRange extends CharsetRangeInstances
  14. object ContentCoding
  15. object Credentials
  16. object DecodeFailure extends Serializable
  17. object DecodeResult
  18. object Entity extends Serializable
  19. object EntityDecoder extends EntityDecoderInstances

    EntityDecoder is used to attempt to decode an EntityBody This companion object provides a way to create new EntityDecoders along with some commonly used instances which can be resolved implicitly.

  20. object EntityEncoder extends EntityEncoderInstances
  21. object Header
  22. object HeaderKey
  23. object Headers
  24. object Http

    Functions for creating Http kleislis.

  25. object Http4s extends Http4s
  26. object Http4sFunctions extends Http4sFunctions
  27. object Http4sInstances extends Http4sInstances
  28. object HttpApp

    Functions for creating HttpApp kleislis.

  29. object HttpCodec
  30. object HttpDate
  31. object HttpRoutes

    Functions for creating HttpRoutes kleislis.

  32. object HttpVersion extends HttpVersionInstances with Serializable
  33. object LanguageTag extends Serializable
  34. object MediaRange
  35. object MediaType extends MimeDB
  36. object Message
  37. object Method extends MethodInstances with Serializable
  38. object ParseFailure extends Serializable
  39. object ParseResult
  40. object QValue extends QValueInstances with QValueFunctions
  41. object Query
  42. object QueryParam
  43. object QueryParamDecoder
  44. object QueryParamEncoder
  45. object QueryParamKeyLike
  46. object RangeUnit extends Serializable
  47. object Request extends Serializable
  48. object RequestCookieJar
  49. object Response extends Serializable
  50. object ServerSentEvent extends Serializable
  51. object ServerSoftware extends Serializable
  52. object StaticFile
  53. object Status extends Serializable
  54. object TransferCoding
  55. object Uri extends UriFunctions with Serializable
  56. object UriTemplate extends Serializable
  57. object UrlForm
  58. object implicits extends AllSyntax

Deprecated Value Members

  1. val Http4sSyntax: all.type
    Annotations
    @deprecated
    Deprecated

    (Since version 0.16) Moved to org.http4s.syntax.all

  2. object HttpService extends Serializable
    Annotations
    @deprecated
    Deprecated

    (Since version 0.19) Replaced by HttpRoutes

  3. object Service
    Annotations
    @deprecated
    Deprecated

    (Since version 0.18) Deprecated in favor of Kleisli

Inherited from AnyRef

Inherited from Any

Ungrouped