Package io.netty.handler.ssl
Class JdkAlpnSslEngine
- java.lang.Object
-
- javax.net.ssl.SSLEngine
-
- io.netty.handler.ssl.JdkSslEngine
-
- io.netty.handler.ssl.JdkAlpnSslEngine
-
- All Implemented Interfaces:
ApplicationProtocolAccessor
final class JdkAlpnSslEngine extends JdkSslEngine
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private classJdkAlpnSslEngine.AlpnSelector
-
Field Summary
Fields Modifier and Type Field Description private JdkAlpnSslEngine.AlpnSelectoralpnSelectorprivate JdkApplicationProtocolNegotiator.ProtocolSelectionListenerselectionListener
-
Constructor Summary
Constructors Constructor Description JdkAlpnSslEngine(javax.net.ssl.SSLEngine engine, JdkApplicationProtocolNegotiator applicationNegotiator, boolean isServer)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.StringgetApplicationProtocol()java.lang.StringgetHandshakeApplicationProtocol()java.util.function.BiFunction<javax.net.ssl.SSLEngine,java.util.List<java.lang.String>,java.lang.String>getHandshakeApplicationProtocolSelector()java.lang.StringgetNegotiatedApplicationProtocol()Returns the name of the negotiated application-level protocol.voidsetHandshakeApplicationProtocolSelector(java.util.function.BiFunction<javax.net.ssl.SSLEngine,java.util.List<java.lang.String>,java.lang.String> selector)(package private) voidsetNegotiatedApplicationProtocol(java.lang.String applicationProtocol)javax.net.ssl.SSLEngineResultunwrap(java.nio.ByteBuffer src, java.nio.ByteBuffer dst)javax.net.ssl.SSLEngineResultunwrap(java.nio.ByteBuffer src, java.nio.ByteBuffer[] dsts)javax.net.ssl.SSLEngineResultunwrap(java.nio.ByteBuffer src, java.nio.ByteBuffer[] dst, int offset, int len)private javax.net.ssl.SSLEngineResultverifyProtocolSelection(javax.net.ssl.SSLEngineResult result)javax.net.ssl.SSLEngineResultwrap(java.nio.ByteBuffer[] srcs, int offset, int len, java.nio.ByteBuffer dst)javax.net.ssl.SSLEngineResultwrap(java.nio.ByteBuffer[] srcs, java.nio.ByteBuffer dst)javax.net.ssl.SSLEngineResultwrap(java.nio.ByteBuffer src, java.nio.ByteBuffer dst)-
Methods inherited from class io.netty.handler.ssl.JdkSslEngine
beginHandshake, closeInbound, closeOutbound, getDelegatedTask, getEnabledCipherSuites, getEnabledProtocols, getEnableSessionCreation, getHandshakeSession, getHandshakeStatus, getNeedClientAuth, getPeerHost, getPeerPort, getSession, getSSLParameters, getSupportedCipherSuites, getSupportedProtocols, getUseClientMode, getWantClientAuth, getWrappedEngine, isInboundDone, isOutboundDone, setEnabledCipherSuites, setEnabledProtocols, setEnableSessionCreation, setNeedClientAuth, setSSLParameters, setUseClientMode, setWantClientAuth
-
-
-
-
Field Detail
-
selectionListener
private final JdkApplicationProtocolNegotiator.ProtocolSelectionListener selectionListener
-
alpnSelector
private final JdkAlpnSslEngine.AlpnSelector alpnSelector
-
-
Constructor Detail
-
JdkAlpnSslEngine
JdkAlpnSslEngine(javax.net.ssl.SSLEngine engine, JdkApplicationProtocolNegotiator applicationNegotiator, boolean isServer)
-
-
Method Detail
-
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:
wrapin classJdkSslEngine- 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:
wrapin classJdkSslEngine- 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:
wrapin classJdkSslEngine- 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:
unwrapin classJdkSslEngine- 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:
unwrapin classJdkSslEngine- 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:
unwrapin classJdkSslEngine- Throws:
javax.net.ssl.SSLException
-
setNegotiatedApplicationProtocol
void setNegotiatedApplicationProtocol(java.lang.String applicationProtocol)
- Overrides:
setNegotiatedApplicationProtocolin classJdkSslEngine
-
getNegotiatedApplicationProtocol
public java.lang.String getNegotiatedApplicationProtocol()
Description copied from interface:ApplicationProtocolAccessorReturns the name of the negotiated application-level protocol.- Specified by:
getNegotiatedApplicationProtocolin interfaceApplicationProtocolAccessor- Overrides:
getNegotiatedApplicationProtocolin classJdkSslEngine- Returns:
- the application-level protocol name or
nullif the negotiation failed or the client does not have ALPN/NPN extension
-
getApplicationProtocol
public java.lang.String getApplicationProtocol()
- Overrides:
getApplicationProtocolin classjavax.net.ssl.SSLEngine
-
getHandshakeApplicationProtocol
public java.lang.String getHandshakeApplicationProtocol()
- Overrides:
getHandshakeApplicationProtocolin classjavax.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:
setHandshakeApplicationProtocolSelectorin classjavax.net.ssl.SSLEngine
-
getHandshakeApplicationProtocolSelector
public java.util.function.BiFunction<javax.net.ssl.SSLEngine,java.util.List<java.lang.String>,java.lang.String> getHandshakeApplicationProtocolSelector()
- Overrides:
getHandshakeApplicationProtocolSelectorin classjavax.net.ssl.SSLEngine
-
-