Packages

c

com.twitter.finagle.param

ClientTransportParams

class ClientTransportParams[A <: Parameterized[A]] extends TransportParams[A]

A collection of methods for configuring the Transport for Finagle clients.

A

a Stack.Parameterized client to configure

See also

com.twitter.finagle.param.TransportParams

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ClientTransportParams
  2. TransportParams
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new ClientTransportParams(self: Parameterized[A])

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  6. def connectTimeout(timeout: Duration): A

    Configures the socket connect timeout of this client (default: 1 second).

    Configures the socket connect timeout of this client (default: 1 second).

    The connection timeout is the maximum amount of time a transport is allowed to spend connecting to a remote socket. This does not include an actual session creation (SSL handshake, HTTP proxy handshake, etc.) only raw socket connect.

  7. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  8. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  9. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  10. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  11. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  12. def httpProxyTo(host: String, credentials: Credentials): A

    Enables TCP tunneling via HTTP CONNECT through an HTTP proxy [1] on this client (default: disabled).

    Enables TCP tunneling via HTTP CONNECT through an HTTP proxy [1] on this client (default: disabled).

    TCP tunneling might be used to flow any TCP traffic (not only HTTP), but is mostly used to establish an HTTPS (TLS/SSL over HTTP) connection to a remote HTTP server through a proxy.

    When enabled, a Finagle client treats the server it connects to as a proxy server and asks it to proxy the traffic to a given ultimate destination, specified as host.

    [1]: https://tools.ietf.org/html/draft-luotonen-web-proxy-tunneling-01

    host

    the ultimate host a proxy server connects to

    credentials

    credentials for a proxy server

  13. def httpProxyTo(host: String): A

    Enables TCP tunneling via HTTP CONNECT through an HTTP proxy [1] on this client (default: disabled).

    Enables TCP tunneling via HTTP CONNECT through an HTTP proxy [1] on this client (default: disabled).

    TCP tunneling might be used to flow any TCP traffic (not only HTTP), but is mostly used to establish an HTTPS (TLS/SSL over HTTP) connection to a remote HTTP server through a proxy.

    When enabled, a Finagle client treats the server it connects to as a proxy server and asks it to proxy the traffic to a given ultimate destination, specified as host.

    [1]: https://tools.ietf.org/html/draft-luotonen-web-proxy-tunneling-01

    host

    the ultimate host a proxy server connects to

  14. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  15. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  16. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  17. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  18. def readTimeout(timeout: Duration): A

    Configures this client or server with given transport-level read timeout (default: unbounded).

    Configures this client or server with given transport-level read timeout (default: unbounded).

    The transport-level read timeout is the maximum amount of time a transport may have received no data. This covers both connections in use (have outstanding requests) and connections that are idle (sitting in the connection pool).

    Transport-level timeouts have a side effect of acting as TTL (expiration) for cached (idle) connection.

    Definition Classes
    TransportParams
  19. def receiveBufferSize(size: StorageUnit): A

    Configures this client or server with given TCP receive buffer size (default: unspecified, a system-level value will be used).

    Configures this client or server with given TCP receive buffer size (default: unspecified, a system-level value will be used).

    Definition Classes
    TransportParams
  20. def sendBufferSize(size: StorageUnit): A

    Configures this client or server with given TCP send buffer size (default: unspecified, a system-level value will be used).

    Configures this client or server with given TCP send buffer size (default: unspecified, a system-level value will be used).

    Definition Classes
    TransportParams
  21. def sni(hostname: String): A

    Configures SNI hostname for SSL

    Configures SNI hostname for SSL

    See also

    Java's SNIHostName for more details.

  22. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  23. def tls(context: SSLContext, hostname: String): A

    Enables the TLS/SSL support (connection encrypting) with hostname validation on this client.

    Enables the TLS/SSL support (connection encrypting) with hostname validation on this client. The TLS/SSL sessions are configured using the given context.

  24. def tls(context: SSLContext): A

    Enables SSL/TLS support (connection encrypting) with no hostname validation on this client.

    Enables SSL/TLS support (connection encrypting) with no hostname validation on this client. The SSL/TLS are configured using the given context.

    Note

    It's recommended to not use SSLContext directly, but rely on Finagle to pick the most efficient SSL/TLS available on your platform.

  25. def tls(hostname: String): A

    Enables SSL/TLS support (connection encrypting) on this client.

    Enables SSL/TLS support (connection encrypting) on this client. Hostname verification will be provided against the given hostname.

  26. def tls: A

    Enables SSL/TLS support (connection encrypting) on this client.

    Enables SSL/TLS support (connection encrypting) on this client.

    Note

    Given that this uses default SSLContext, all configuration params (trust/key stores) should be passed as Java system properties.

  27. def tls(config: SslClientConfiguration, engineFactory: SslClientEngineFactory, sessionVerifier: SslClientSessionVerifier): A

    Enables SSL/TLS support (connection encrypting) on this client.

  28. def tls(config: SslClientConfiguration, sessionVerifier: SslClientSessionVerifier): A

    Enables SSL/TLS support (connection encrypting) on this client.

  29. def tls(config: SslClientConfiguration, engineFactory: SslClientEngineFactory): A

    Enables SSL/TLS support (connection encrypting) on this client.

  30. def tls(config: SslClientConfiguration): A

    Enables SSL/TLS support (connection encrypting) on this client.

  31. def tlsWithoutValidation: A

    Enables the TLS/SSL support (connection encrypting) with no certificate validation on this client.

    Enables the TLS/SSL support (connection encrypting) with no certificate validation on this client.

    Note

    This makes a client trust any certificate sent by a server, which invalidates the entire idea of TLS/SSL. Use this carefully.

  32. def toString(): String
    Definition Classes
    AnyRef → Any
  33. def verbose: A

    Makes the transport of this client or server verbose (default: disabled).

    Makes the transport of this client or server verbose (default: disabled).

    A verbose transport logs its activity onto a configured logger (by default, standard output).

    Definition Classes
    TransportParams
  34. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  35. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  36. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  37. def writeTimeout(timeout: Duration): A

    Configures this client or server with given transport-level write timeout (default: unbounded).

    Configures this client or server with given transport-level write timeout (default: unbounded).

    The transport-level write timeout is the maximum amount of time a transport may not have sent any data. This covers both connections in use (have outstanding requests) and connections that are idle (sitting in the connection pool).

    Transport-level timeouts have a side effect of acting as TTL (expiration) for cached (idle) connection.

    Definition Classes
    TransportParams

Inherited from TransportParams[A]

Inherited from AnyRef

Inherited from Any

Ungrouped