Class ConnectionKey

java.lang.Object
io.helidon.webclient.api.ConnectionKey

public final class ConnectionKey extends Object
Connection key instance contains all needed connection related information.
  • Method Details

    • create

      public static ConnectionKey create(String scheme, String host, int port, Tls tls, DnsResolver dnsResolver, DnsAddressLookup dnsAddressLookup, Proxy proxy)
      Create new instance of the ConnectionKey.
      Parameters:
      scheme - uri address scheme
      host - uri address host
      port - uri address port
      tls - TLS to be used in connection
      dnsResolver - DNS resolver to be used
      dnsAddressLookup - DNS address lookup strategy
      proxy - Proxy server to use for outgoing requests
      Returns:
      new instance
    • create

      public static ConnectionKey create(ClientUri uri, Tls tls, DnsResolver dnsResolver, DnsAddressLookup dnsAddressLookup, Proxy proxy)
      Create new instance of the ConnectionKey.
      Parameters:
      uri - resolved URI
      tls - TLS to be used in connection
      dnsResolver - DNS resolver to be used
      dnsAddressLookup - DNS address lookup strategy
      proxy - Proxy server to use for outgoing requests
      Returns:
      new instance
    • create

      public static ConnectionKey create(ClientUri uri, SniConfig sni, Tls tls, DnsResolver dnsResolver, DnsAddressLookup dnsAddressLookup, Proxy proxy, ClientRequestHeaders headers)
      Create new instance of the ConnectionKey.
      Parameters:
      uri - resolved URI
      sni - effective SNI configuration
      tls - TLS to be used in connection
      dnsResolver - DNS resolver to be used
      dnsAddressLookup - DNS address lookup strategy
      proxy - Proxy server to use for outgoing requests
      headers - final request headers available before connection acquisition
      Returns:
      new instance
    • createUnixDomainSocket

      public static ConnectionKey createUnixDomainSocket(String scheme, String host, int port, Tls tls, DnsResolver dnsResolver, DnsAddressLookup dnsAddressLookup, UnixDomainSocketAddress address)
      Create new instance of the ConnectionKey for a Unix domain socket transport.
      Parameters:
      scheme - uri address scheme
      host - uri address host
      port - uri address port
      tls - TLS to be used in connection
      dnsResolver - DNS resolver to be used
      dnsAddressLookup - DNS address lookup strategy
      address - Unix domain socket transport address
      Returns:
      new instance
    • createUnixDomainSocket

      public static ConnectionKey createUnixDomainSocket(ClientUri uri, Tls tls, DnsResolver dnsResolver, DnsAddressLookup dnsAddressLookup, UnixDomainSocketAddress address)
      Create new instance of the ConnectionKey for a Unix domain socket transport.
      Parameters:
      uri - resolved URI
      tls - TLS to be used in connection
      dnsResolver - DNS resolver to be used
      dnsAddressLookup - DNS address lookup strategy
      address - Unix domain socket transport address
      Returns:
      new instance
    • createUnixDomainSocket

      public static ConnectionKey createUnixDomainSocket(ClientUri uri, SniConfig sni, Tls tls, DnsResolver dnsResolver, DnsAddressLookup dnsAddressLookup, UnixDomainSocketAddress address, ClientRequestHeaders headers)
      Create new instance of the ConnectionKey for a Unix domain socket transport.
      Parameters:
      uri - resolved URI
      sni - effective SNI configuration
      tls - TLS to be used in connection
      dnsResolver - DNS resolver to be used
      dnsAddressLookup - DNS address lookup strategy
      address - Unix domain socket transport address
      headers - final request headers available before connection acquisition
      Returns:
      new instance
    • scheme

      public String scheme()
      Uri address scheme.
      Returns:
      uri address scheme
    • host

      public String host()
      Uri address host.
      Returns:
      uri address host
    • port

      public int port()
      Uri address port.
      Returns:
      uri address port
    • tls

      public Tls tls()
      Configured Tls.
      Returns:
      configured tls
    • dnsResolver

      public DnsResolver dnsResolver()
      Configured DnsResolver.
      Returns:
      configured dns resolver
    • dnsAddressLookup

      public DnsAddressLookup dnsAddressLookup()
      Configured DnsAddressLookup.
      Returns:
      configured dns address lookup
    • proxy

      public Proxy proxy()
      Configured Proxy.
      Returns:
      configured proxy
    • tlsPeerHost

      public String tlsPeerHost()
      Host used as the TLS peer host for SNI and endpoint identification.
      Returns:
      TLS peer host
    • tlsPeerPort

      public int tlsPeerPort()
      Port used as the TLS peer port for endpoint identification.
      Returns:
      TLS peer port
    • applyServerNames

      public void applyServerNames(SSLParameters sslParameters)
      Apply effective server names to SSL parameters when first-class SNI configuration overrides the TLS defaults.
      Parameters:
      sslParameters - SSL parameters to update
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object