Package

org.http4s

client

Permalink

package client

Provides extension methods for using the a http4s org.http4s.client.Client

import scalaz.concurrent.Task
import org.http4s._
import org.http4s.client._
import org.http4s.Http4s._
import org.http4s.Status._
import org.http4s.Method._
import org.http4s.EntityDecoder

def client: Client = ???

val r: Task[String] = client(GET(uri("https://www.foo.bar/"))).as[String]
val r2: DecodeResult[String] = client(GET(uri("https://www.foo.bar/"))).attemptAs[String] // implicitly resolve the decoder
val req1 = r.run
val req2 = r.run // Each invocation fetches a new Result based on the behavior of the Client
Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. client
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. final case class Client(open: Service[Request, DisposableResponse], shutdown: Task[Unit]) extends Product with Serializable

    Permalink

    A Client submits Requests to a server and processes the Response.

    A Client submits Requests to a server and processes the Response.

    open

    a service to asynchronously return a DisposableResponse from a Request. This is a low-level operation intended for client implementations and middleware.

    shutdown

    a Task to shut down this Shutdown this client, closing any open connections and freeing resources

  2. trait Connection extends AnyRef

    Permalink
  3. type ConnectionBuilder[A <: Connection] = (RequestKey) ⇒ Task[A]

    Permalink
  4. trait ConnectionManager[A <: Connection] extends AnyRef

    Permalink

    Type that is responsible for the client lifecycle

    Type that is responsible for the client lifecycle

    The ConnectionManager is a general wrapper around a ConnectionBuilder that can pool resources in order to conserve resources such as socket connections, CPU time, SSL handshakes, etc. Because it can contain significant resources it must have a mechanism to free resources associated with it.

  5. final case class DisposableResponse(response: Response, dispose: Task[Unit]) extends Product with Serializable

    Permalink

    Contains a Response that needs to be disposed of to free the underlying HTTP connection.

  6. type Middleware = (Client) ⇒ Client

    Permalink
  7. implicit final class NoBodySyntax extends AnyVal with EmptyRequestGenerator

    Permalink
  8. final case class RequestKey(scheme: Scheme, authority: Authority) extends Product with Serializable

    Permalink

    Represents a key for requests that can conceivably share a Connection.

  9. final case class UnexpectedStatus(status: Status) extends RuntimeException with NoStackTrace with Product with Serializable

    Permalink
  10. implicit final class WithBodySyntax extends AnyVal with EntityRequestGenerator

    Permalink

    Syntax classes to generate a request directly from a Method

Value Members

  1. object Client extends Serializable

    Permalink
  2. object ConnectionManager

    Permalink
  3. object RequestKey extends Serializable

    Permalink
  4. package impl

    Permalink
  5. package middleware

    Permalink
  6. package oauth1

    Permalink

    Basic OAuth1 message signing support

    Basic OAuth1 message signing support

    This feature is not considered stable.

  7. implicit def wHeadersDec[T](implicit decoder: EntityDecoder[T]): EntityDecoder[(Headers, T)]

    Permalink

Inherited from AnyRef

Inherited from Any

Ungrouped