Class JdkAlpnSslEngine

java.lang.Object
javax.net.ssl.SSLEngine
io.netty.handler.ssl.JdkSslEngine
io.netty.handler.ssl.JdkAlpnSslEngine
All Implemented Interfaces:
ApplicationProtocolAccessor
Direct Known Subclasses:
BouncyCastleAlpnSslEngine

class JdkAlpnSslEngine extends JdkSslEngine
  • Field Details

  • Constructor Details

    • JdkAlpnSslEngine

      JdkAlpnSslEngine(javax.net.ssl.SSLEngine engine, JdkApplicationProtocolNegotiator applicationNegotiator, boolean isServer, java.util.function.BiConsumer<javax.net.ssl.SSLEngine, JdkAlpnSslEngine.AlpnSelector> setHandshakeApplicationProtocolSelector, java.util.function.BiConsumer<javax.net.ssl.SSLEngine, java.util.List<java.lang.String>> setApplicationProtocols)
    • JdkAlpnSslEngine

      JdkAlpnSslEngine(javax.net.ssl.SSLEngine engine, JdkApplicationProtocolNegotiator applicationNegotiator, boolean isServer)
  • Method Details

    • verifyProtocolSelection

      private javax.net.ssl.SSLEngineResult verifyProtocolSelection(javax.net.ssl.SSLEngineResult result) throws javax.net.ssl.SSLException
      Throws:
      javax.net.ssl.SSLException
    • wrap

      public javax.net.ssl.SSLEngineResult wrap(java.nio.ByteBuffer src, java.nio.ByteBuffer dst) throws javax.net.ssl.SSLException
      Overrides:
      wrap in class JdkSslEngine
      Throws:
      javax.net.ssl.SSLException
    • wrap

      public javax.net.ssl.SSLEngineResult wrap(java.nio.ByteBuffer[] srcs, java.nio.ByteBuffer dst) throws javax.net.ssl.SSLException
      Overrides:
      wrap in class JdkSslEngine
      Throws:
      javax.net.ssl.SSLException
    • wrap

      public javax.net.ssl.SSLEngineResult wrap(java.nio.ByteBuffer[] srcs, int offset, int len, java.nio.ByteBuffer dst) throws javax.net.ssl.SSLException
      Overrides:
      wrap in class JdkSslEngine
      Throws:
      javax.net.ssl.SSLException
    • unwrap

      public javax.net.ssl.SSLEngineResult unwrap(java.nio.ByteBuffer src, java.nio.ByteBuffer dst) throws javax.net.ssl.SSLException
      Overrides:
      unwrap in class JdkSslEngine
      Throws:
      javax.net.ssl.SSLException
    • unwrap

      public javax.net.ssl.SSLEngineResult unwrap(java.nio.ByteBuffer src, java.nio.ByteBuffer[] dsts) throws javax.net.ssl.SSLException
      Overrides:
      unwrap in class JdkSslEngine
      Throws:
      javax.net.ssl.SSLException
    • unwrap

      public javax.net.ssl.SSLEngineResult unwrap(java.nio.ByteBuffer src, java.nio.ByteBuffer[] dst, int offset, int len) throws javax.net.ssl.SSLException
      Overrides:
      unwrap in class JdkSslEngine
      Throws:
      javax.net.ssl.SSLException
    • setNegotiatedApplicationProtocol

      void setNegotiatedApplicationProtocol(java.lang.String applicationProtocol)
      Overrides:
      setNegotiatedApplicationProtocol in class JdkSslEngine
    • getNegotiatedApplicationProtocol

      public java.lang.String getNegotiatedApplicationProtocol()
      Description copied from interface: ApplicationProtocolAccessor
      Returns the name of the negotiated application-level protocol.
      Specified by:
      getNegotiatedApplicationProtocol in interface ApplicationProtocolAccessor
      Overrides:
      getNegotiatedApplicationProtocol in class JdkSslEngine
      Returns:
      the application-level protocol name or null if the negotiation failed or the client does not have ALPN/NPN extension
    • getApplicationProtocol

      public java.lang.String getApplicationProtocol()
      Overrides:
      getApplicationProtocol in class javax.net.ssl.SSLEngine
    • getHandshakeApplicationProtocol

      public java.lang.String getHandshakeApplicationProtocol()
      Overrides:
      getHandshakeApplicationProtocol in class javax.net.ssl.SSLEngine
    • setHandshakeApplicationProtocolSelector

      public void setHandshakeApplicationProtocolSelector(java.util.function.BiFunction<javax.net.ssl.SSLEngine, java.util.List<java.lang.String>, java.lang.String> selector)
      Overrides:
      setHandshakeApplicationProtocolSelector in class javax.net.ssl.SSLEngine
    • getHandshakeApplicationProtocolSelector

      public java.util.function.BiFunction<javax.net.ssl.SSLEngine, java.util.List<java.lang.String>, java.lang.String> getHandshakeApplicationProtocolSelector()
      Overrides:
      getHandshakeApplicationProtocolSelector in class javax.net.ssl.SSLEngine