EmberClientBuilder

org.http4s.ember.client.EmberClientBuilder
See theEmberClientBuilder companion object
final class EmberClientBuilder[F[_]]

Attributes

Companion
object
Source
EmberClientBuilder.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Self type

Members list

Value members

Concrete methods

def build: Resource[F, Client[F]]

Attributes

Source
EmberClientBuilder.scala

Sets additional socket options to apply to the underlying sockets.

Sets additional socket options to apply to the underlying sockets.

Attributes

Source
EmberClientBuilder.scala
def withCheckEndpointAuthentication(checkEndpointIdentification: Boolean): EmberClientBuilder[F]

Sets whether or not to force endpoint authentication/verification on the TLSContext.

Sets whether or not to force endpoint authentication/verification on the TLSContext. Enabled by default. When enabled the server's identity will be checked against the server's certificate during SSL/TLS handshaking. This is important to avoid man-in-the-middle attacks by confirming server identity against their certificate.

Attributes

Source
EmberClientBuilder.scala
def withChunkSize(chunkSize: Int): EmberClientBuilder[F]

Sets the max chunkSize in bytes to read from sockets at a time.

Sets the max chunkSize in bytes to read from sockets at a time.

Attributes

Source
EmberClientBuilder.scala

Enables HTTP/2 support.

Enables HTTP/2 support. Disabled by default.

Attributes

Source
EmberClientBuilder.scala
def withIdleConnectionTime(idleConnectionTime: Duration): EmberClientBuilder[F]

Sets the idle timeout on connections.

Sets the idle timeout on connections. The timeout is reset with each read or write.

Attributes

Source
EmberClientBuilder.scala

Sets the connection pool's maximum time a connection can be idle.

Sets the connection pool's maximum time a connection can be idle. The timeout starts when a connection is returned the the pool, and reset when it is borrowed.

Attributes

Source
EmberClientBuilder.scala
def withLogger(logger: Logger[F]): EmberClientBuilder[F]

Sets the Logger.

Sets the Logger.

Attributes

Source
EmberClientBuilder.scala

Sets the connection pool's maximum number of pooled connections per RequestKey.

Sets the connection pool's maximum number of pooled connections per RequestKey.

Attributes

Source
EmberClientBuilder.scala
def withMaxResponseHeaderSize(maxResponseHeaderSize: Int): EmberClientBuilder[F]

Sets the max size in bytes to read while parsing response headers.

Sets the max size in bytes to read while parsing response headers.

Attributes

Source
EmberClientBuilder.scala
def withMaxTotal(maxTotal: Int): EmberClientBuilder[F]

Sets the connection pool's total maximum number of idle connections.

Sets the connection pool's total maximum number of idle connections. Per RequestKey values set with withMaxPerKey cannot override this total maximum.

Attributes

Source
EmberClientBuilder.scala

Push promises are implemented via responding with a PushPromise frame which is effectively a request headers frame for a request that wasn't sent by the client.

Push promises are implemented via responding with a PushPromise frame which is effectively a request headers frame for a request that wasn't sent by the client.

The second param is the response once it is available that you can wait for OR you can cancel the Outcome to send a termination signal to ask the remote server to stop sending additional data from this data stream. If you want to handle these the outcome can just be outcome successful. But you can save significant data by canceling requests you don't want.

Push promises are very useful to get all the data necessary to render a page in parallel to the actual data for that page leading to much faster render times, or sending additional cache enriching information.

Push promise support is disabled by default.

Attributes

Source
EmberClientBuilder.scala
def withRetryPolicy(retryPolicy: () => F): EmberClientBuilder[F]

Sets the RetryPolicy.

Sets the RetryPolicy.

Attributes

Source
EmberClientBuilder.scala
def withServerNameIndication(serverNameIndication: Boolean): EmberClientBuilder[F]

Sets whether or not to enable Server Name Indication on the TLSContext.

Sets whether or not to enable Server Name Indication on the TLSContext. Enabled by default. When enabled the hostname will be indicated during SSL/TLS handshaking. This is important to reach a web server that is responsible for multiple hostnames so that it can use the correct certificate.

Attributes

Source
EmberClientBuilder.scala

Sets the SocketGroup, a group of TCP sockets to be used in connections.

Sets the SocketGroup, a group of TCP sockets to be used in connections.

Attributes

Source
EmberClientBuilder.scala
def withTLSContext(tlsContext: TLSContext[F]): EmberClientBuilder[F]

Sets a custom TLSContext.

Sets a custom TLSContext. By default a TLSContext is created from the system default SSLContext.

Attributes

Source
EmberClientBuilder.scala

Sets the header receive timeout on connections.

Sets the header receive timeout on connections.

Attributes

Source
EmberClientBuilder.scala

Sets underlying UnixSockets to use for requests with a UnixSocketAddress.

Sets underlying UnixSockets to use for requests with a UnixSocketAddress. Useful for secure and efficient inter-process communication. See also UnixSocket client middleware to direct all requests to a UnixSocketAddress.

Attributes

Source
EmberClientBuilder.scala

Sets the default User-Agent string.

Sets the default User-Agent string. A User-Agent header on a request takes priority over this setting.

Attributes

Source
EmberClientBuilder.scala

Disables endpoint authentication/verification.

Disables endpoint authentication/verification.

Attributes

Source
EmberClientBuilder.scala

Disables HTTP/2 support.

Disables HTTP/2 support. Disabled by default.

Attributes

Source
EmberClientBuilder.scala

Disables Push promise support.

Disables Push promise support. Push promise support is disabled by default.

Attributes

Source
EmberClientBuilder.scala

Disables Server Name Indication

Disables Server Name Indication

Attributes

Source
EmberClientBuilder.scala

Unset any TLSContext and creates one from the system default SSLContext.

Unset any TLSContext and creates one from the system default SSLContext.

Attributes

Source
EmberClientBuilder.scala

Clears the default User-Agent string, so no User-Agent header is sent.

Clears the default User-Agent string, so no User-Agent header is sent. A User-Agent header on a request takes priority over this setting.

Attributes

Source
EmberClientBuilder.scala