org.apache.hc.core5.http.nio.ssl

## Class BasicServerTlsStrategy

- java.lang.Object
- - org.apache.hc.core5.http.nio.ssl.BasicServerTlsStrategy

- All Implemented Interfaces:
    TlsStrategy

      public class BasicServerTlsStrategy
      extends Object
      implements TlsStrategy

  Basic side-side implementation of `TlsStrategy` that upgrades to TLS for endpoints with the specified local ports.
  Since:
    5.0

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `BasicServerTlsStrategy(SecurePortStrategy securePortStrategy)`
    `BasicServerTlsStrategy(SSLContext sslContext, SecurePortStrategy securePortStrategy)`
    `BasicServerTlsStrategy(SSLContext sslContext, SecurePortStrategy securePortStrategy, SSLBufferMode sslBufferMode, SSLSessionInitializer initializer, SSLSessionVerifier verifier)`
    `BasicServerTlsStrategy(SSLContext sslContext, SecurePortStrategy securePortStrategy, SSLSessionInitializer initializer, SSLSessionVerifier verifier)`
    `BasicServerTlsStrategy(SSLContext sslContext, SecurePortStrategy securePortStrategy, SSLSessionVerifier verifier)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `upgrade(TransportSecurityLayer tlsSession, HttpHost host, SocketAddress localAddress, SocketAddress remoteAddress, Object attachment, Timeout handshakeTimeout)` Secures current session layer with TLS security.

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

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

- - ### Constructor Detail

    - #### BasicServerTlsStrategy

          public BasicServerTlsStrategy(SSLContext sslContext,
                                SecurePortStrategy securePortStrategy,
                                SSLBufferMode sslBufferMode,
                                SSLSessionInitializer initializer,
                                SSLSessionVerifier verifier)

    - #### BasicServerTlsStrategy

          public BasicServerTlsStrategy(SSLContext sslContext,
                                SecurePortStrategy securePortStrategy,
                                SSLSessionInitializer initializer,
                                SSLSessionVerifier verifier)

    - #### BasicServerTlsStrategy

          public BasicServerTlsStrategy(SSLContext sslContext,
                                SecurePortStrategy securePortStrategy,
                                SSLSessionVerifier verifier)

    - #### BasicServerTlsStrategy

          public BasicServerTlsStrategy(SSLContext sslContext,
                                SecurePortStrategy securePortStrategy)

    - #### BasicServerTlsStrategy

          public BasicServerTlsStrategy(SecurePortStrategy securePortStrategy)

  - ### Method Detail

    - #### upgrade

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

      Description copied from interface: `TlsStrategy`
      Secures current session layer with TLS security.
      Specified by:
        `upgrade` in interface `TlsStrategy`
      Parameters:
        `tlsSession` - the session layer
        `host` - the name of the opposite endpoint when givem 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–2021 The Apache Software Foundation. All rights reserved.