Interface JdkApplicationProtocolNegotiator.ProtocolSelector

All Known Implementing Classes:
JdkBaseApplicationProtocolNegotiator.FailProtocolSelector, JdkBaseApplicationProtocolNegotiator.NoFailProtocolSelector
Enclosing interface:
JdkApplicationProtocolNegotiator

public static interface JdkApplicationProtocolNegotiator.ProtocolSelector
Interface to define the role of an application protocol selector in the SSL handshake process. Either unsupported() OR select(List) will be called for each SSL handshake.
  • Method Summary

    Modifier and Type
    Method
    Description
    select(List<String> protocols)
    Callback invoked to select the application level protocol from the protocols provided.
    void
    Callback invoked to let the application know that the peer does not support this ApplicationProtocolNegotiator.
  • Method Details

    • unsupported

      void unsupported()
      Callback invoked to let the application know that the peer does not support this ApplicationProtocolNegotiator.
    • select

      String select(List<String> protocols) throws Exception
      Callback invoked to select the application level protocol from the protocols provided.
      Parameters:
      protocols - the protocols sent by the protocol advertiser
      Returns:
      the protocol selected by this JdkApplicationProtocolNegotiator.ProtocolSelector. A null value will indicate the no protocols were selected but the handshake should not fail. The decision to fail the handshake is left to the other end negotiating the SSL handshake.
      Throws:
      Exception - If the protocols provide warrant failing the SSL handshake with a fatal alert.