Class ClientTransport


  • public abstract class ClientTransport
    extends java.lang.Object
    SPI for implementors of custom client transports.
    • Constructor Detail

      • ClientTransport

        public ClientTransport()
    • Method Detail

      • httpsProxy

        public static ClientTransport httpsProxy​(java.net.InetSocketAddress proxyAddress)
        Returns a ClientTransport that runs all connection through the given HTTP(S) proxy using the HTTP CONNECT method.

        An HTTP(S) proxy is a proxy that will create one TCP connection to the HTTP(S) proxy for each target connection. The proxy transparently forwards the TCP connection to the target host.

        For more information about HTTP CONNECT tunnelling see https://tools.ietf.org/html/rfc7231#section-4.3.6.

        Parameters:
        proxyAddress - (undocumented)
        Returns:
        (undocumented)
      • httpsProxy

        public static ClientTransport httpsProxy​(akka.actor.ActorSystem system)
        Returns a ClientTransport that runs all connection through the given HTTP(S) proxy using the HTTP CONNECT method.

        Pulls the host/port pair from the application.conf: akka.client.proxy.https.{host, port}

        Parameters:
        system - (undocumented)
        Returns:
        (undocumented)
      • httpsProxy

        public static ClientTransport httpsProxy​(java.net.InetSocketAddress proxyAddress,
                                                 HttpCredentials proxyCredentials)
        Returns a ClientTransport that runs all connection through the given HTTP(S) proxy using the HTTP CONNECT method. This call also takes HttpCredentials to base proxy credentials along with the request.

        An HTTP(S) proxy is a proxy that will create one TCP connection to the HTTP(S) proxy for each target connection. The proxy transparently forwards the TCP connection to the target host.

        For more information about HTTP CONNECT tunnelling see https://tools.ietf.org/html/rfc7231#section-4.3.6.

        Parameters:
        proxyAddress - (undocumented)
        proxyCredentials - (undocumented)
        Returns:
        (undocumented)
      • httpsProxy

        public static ClientTransport httpsProxy​(HttpCredentials proxyCredentials,
                                                 akka.actor.ActorSystem system)
        Returns a ClientTransport that runs all connection through the given HTTP(S) proxy using the HTTP CONNECT method. This method also takes HttpCredentials in order to pass along to the proxy.

        Pulls the host/port pair from the application.conf: akka.client.proxy.https.{host, port}

        Parameters:
        proxyCredentials - (undocumented)
        system - (undocumented)
        Returns:
        (undocumented)
      • withCustomResolver

        public static ClientTransport withCustomResolver​(java.util.function.BiFunction<java.lang.String,​java.lang.Object,​java.util.concurrent.CompletionStage<java.net.InetSocketAddress>> lookup)
        Returns a ClientTransport that allows to customize host name resolution.
        Parameters:
        lookup - A function that will be called with hostname and port and that should (potentially asynchronously resolve the given host/port to an InetSocketAddress
        Returns:
        (undocumented)
      • connectTo

        public abstract akka.stream.javadsl.Flow<akka.util.ByteString,​akka.util.ByteString,​java.util.concurrent.CompletionStage<OutgoingConnection>> connectTo​(java.lang.String host,
                                                                                                                                                                           int port,
                                                                                                                                                                           ClientConnectionSettings settings,
                                                                                                                                                                           akka.actor.ActorSystem system)