org.apache.hc.core5.http2.ssl

## Class H2ClientTlsStrategy

- java.lang.Object
- - org.apache.hc.core5.http2.ssl.H2ClientTlsStrategy

- All Implemented Interfaces:
    TlsStrategy

      public class H2ClientTlsStrategy
      extends Object
      implements TlsStrategy

  Basic client-side implementation of `TlsStrategy` that upgrades to TLS for all endpoints with `HTTPS` scheme.
  Since:
    5.0

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `H2ClientTlsStrategy()`
    `H2ClientTlsStrategy(SSLContext sslContext)`
    `H2ClientTlsStrategy(SSLContext sslContext, SSLBufferMode sslBufferMode, SSLSessionInitializer initializer, SSLSessionVerifier verifier)`
    `H2ClientTlsStrategy(SSLContext sslContext, SSLSessionInitializer initializer, SSLSessionVerifier verifier)`
    `H2ClientTlsStrategy(SSLContext sslContext, SSLSessionVerifier verifier)`
    `H2ClientTlsStrategy(SSLSessionVerifier verifier)` Constructor with the default SSL context based on system properties and custom `SSLSessionVerifier`.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `upgrade(TransportSecurityLayer tlsSession, HttpHost host, SocketAddress localAddress, SocketAddress remoteAddress, Object attachment, Timeout handshakeTimeout)` Deprecated. use `upgrade(TransportSecurityLayer, NamedEndpoint, Object, Timeout, FutureCallback)`
    `void` | `upgrade(TransportSecurityLayer tlsSession, NamedEndpoint endpoint, Object attachment, Timeout handshakeTimeout, FutureCallback<TransportSecurityLayer> callback)` Secures current session layer with TLS.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### H2ClientTlsStrategy

          public H2ClientTlsStrategy(SSLContext sslContext,
                                     SSLBufferMode sslBufferMode,
                                     SSLSessionInitializer initializer,
                                     SSLSessionVerifier verifier)

    - #### H2ClientTlsStrategy

          public H2ClientTlsStrategy(SSLContext sslContext,
                                     SSLSessionInitializer initializer,
                                     SSLSessionVerifier verifier)

    - #### H2ClientTlsStrategy

          public H2ClientTlsStrategy(SSLContext sslContext,
                                     SSLSessionVerifier verifier)

    - #### H2ClientTlsStrategy

          public H2ClientTlsStrategy(SSLContext sslContext)

    - #### H2ClientTlsStrategy

          public H2ClientTlsStrategy()

    - #### H2ClientTlsStrategy

          public H2ClientTlsStrategy(SSLSessionVerifier verifier)

      Constructor with the default SSL context based on system properties and custom `SSLSessionVerifier`.
      Parameters:
        `verifier` - the custom `SSLSessionVerifier`.
      Since:
        5.2
      See Also:
        `SSLContext`

  - ### Method Detail

    - #### upgrade

          public void upgrade(TransportSecurityLayer tlsSession,
                              NamedEndpoint endpoint,
                              Object attachment,
                              Timeout handshakeTimeout,
                              FutureCallback<TransportSecurityLayer> callback)

      Description copied from interface: `TlsStrategy`
      Secures current session layer with TLS.
      Specified by:
        `upgrade` in interface `TlsStrategy`
      Parameters:
        `tlsSession` - the session layer
        `endpoint` - the name of the opposite endpoint when applicable or `null` otherwise.
        `attachment` - arbitrary object passes to the TLS session initialization code.
        `handshakeTimeout` - the timeout to use while performing the TLS handshake; may be `null`.
        `callback` - Operation result callback.

    - #### upgrade

          @Deprecated
          public boolean upgrade(TransportSecurityLayer tlsSession,
                                             HttpHost host,
                                             SocketAddress localAddress,
                                             SocketAddress remoteAddress,
                                             Object attachment,
                                             Timeout handshakeTimeout)

      Deprecated. use `upgrade(TransportSecurityLayer, NamedEndpoint, Object, Timeout, FutureCallback)`
      Description copied from interface: `TlsStrategy`
      Secures current session layer with TLS.
      Specified by:
        `upgrade` in interface `TlsStrategy`
      Parameters:
        `tlsSession` - the session layer
        `host` - the name of the opposite endpoint when given or `null` otherwise.
        `localAddress` - the address of the local endpoint.
        `remoteAddress` - the address of the remote endpoint.
        `attachment` - arbitrary object passes to the TLS session initialization code.
        `handshakeTimeout` - the timeout to use while performing the TLS handshake; may be `null`.
      Returns:
        `true` if the session has been upgraded, `false` otherwise.

Copyright © 2005–2022 The Apache Software Foundation. All rights reserved.