Package org.conscrypt
Class Java8FileDescriptorSocket
- java.lang.Object
-
- java.net.Socket
-
- javax.net.ssl.SSLSocket
-
- org.conscrypt.AbstractConscryptSocket
-
- org.conscrypt.OpenSSLSocketImpl
-
- org.conscrypt.ConscryptFileDescriptorSocket
-
- org.conscrypt.Java8FileDescriptorSocket
-
- All Implemented Interfaces:
java.io.Closeable
,java.lang.AutoCloseable
,NativeCrypto.SSLHandshakeCallbacks
,SSLParametersImpl.AliasChooser
,SSLParametersImpl.PSKCallbacks
final class Java8FileDescriptorSocket extends ConscryptFileDescriptorSocket
A version of ConscryptFileDescriptorSocket that includes the new Java 9 (and potentially later patches of 8)setHandshakeApplicationProtocolSelector
API (which requires Java 8 for compilation, due to the use ofBiFunction
).
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.function.BiFunction<javax.net.ssl.SSLSocket,java.util.List<java.lang.String>,java.lang.String>
selector
-
Fields inherited from class org.conscrypt.AbstractConscryptSocket
socket
-
-
Constructor Summary
Constructors Constructor Description Java8FileDescriptorSocket(java.lang.String hostname, int port, java.net.InetAddress clientAddress, int clientPort, SSLParametersImpl sslParameters)
Java8FileDescriptorSocket(java.lang.String hostname, int port, SSLParametersImpl sslParameters)
Java8FileDescriptorSocket(java.net.InetAddress address, int port, java.net.InetAddress clientAddress, int clientPort, SSLParametersImpl sslParameters)
Java8FileDescriptorSocket(java.net.InetAddress address, int port, SSLParametersImpl sslParameters)
Java8FileDescriptorSocket(java.net.Socket socket, java.lang.String hostname, int port, boolean autoClose, SSLParametersImpl sslParameters)
Java8FileDescriptorSocket(SSLParametersImpl sslParameters)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.function.BiFunction<javax.net.ssl.SSLSocket,java.util.List<java.lang.String>,java.lang.String>
getHandshakeApplicationProtocolSelector()
void
setHandshakeApplicationProtocolSelector(java.util.function.BiFunction<javax.net.ssl.SSLSocket,java.util.List<java.lang.String>,java.lang.String> selector)
private static ApplicationProtocolSelector
toApplicationProtocolSelector(java.util.function.BiFunction<javax.net.ssl.SSLSocket,java.util.List<java.lang.String>,java.lang.String> selector)
-
Methods inherited from class org.conscrypt.ConscryptFileDescriptorSocket
chooseClientAlias, chooseClientPSKIdentity, chooseServerAlias, chooseServerPSKIdentityHint, clientCertificateRequested, clientPSKKeyRequested, close, exportKeyingMaterial, finalize, getActiveSession, getApplicationProtocol, getApplicationProtocols, getChannelId, getEnabledCipherSuites, getEnabledProtocols, getEnableSessionCreation, getHandshakeApplicationProtocol, getHandshakeSession, getInputStream, getNeedClientAuth, getOutputStream, getPSKKey, getSession, getSoWriteTimeout, getSSLParameters, getSupportedCipherSuites, getSupportedProtocols, getTlsUnique, getUseClientMode, getWantClientAuth, onNewSessionEstablished, onSSLStateChange, selectApplicationProtocol, serverCertificateRequested, serverPSKKeyRequested, serverSessionRequested, setApplicationProtocols, setApplicationProtocolSelector, setApplicationProtocolSelector, setChannelIdEnabled, setChannelIdPrivateKey, setEnabledCipherSuites, setEnabledProtocols, setEnableSessionCreation, setHandshakeTimeout, setHostname, setNeedClientAuth, setSoWriteTimeout, setSSLParameters, setUseClientMode, setUseSessionTickets, setWantClientAuth, startHandshake, verifyCertificateChain
-
Methods inherited from class org.conscrypt.OpenSSLSocketImpl
getAlpnSelectedProtocol, getFileDescriptor$, getHostname, getHostnameOrIP, getNpnSelectedProtocol, setAlpnProtocols, setAlpnProtocols, setNpnProtocols
-
Methods inherited from class org.conscrypt.AbstractConscryptSocket
addHandshakeCompletedListener, bind, checkOpen, connect, connect, getChannel, getInetAddress, getKeepAlive, getLocalAddress, getLocalPort, getLocalSocketAddress, getOOBInline, getPort, getReceiveBufferSize, getRemoteSocketAddress, getReuseAddress, getSendBufferSize, getSoLinger, getSoTimeout, getTcpNoDelay, getTrafficClass, isBound, isClosed, isConnected, isInputShutdown, isOutputShutdown, notifyHandshakeCompletedListeners, peerInfoProvider, removeHandshakeCompletedListener, sendUrgentData, setKeepAlive, setOOBInline, setPerformancePreferences, setReceiveBufferSize, setReuseAddress, setSendBufferSize, setSoLinger, setSoTimeout, setTcpNoDelay, setTrafficClass, shutdownInput, shutdownOutput, toString
-
-
-
-
Constructor Detail
-
Java8FileDescriptorSocket
Java8FileDescriptorSocket(SSLParametersImpl sslParameters) throws java.io.IOException
- Throws:
java.io.IOException
-
Java8FileDescriptorSocket
Java8FileDescriptorSocket(java.lang.String hostname, int port, SSLParametersImpl sslParameters) throws java.io.IOException
- Throws:
java.io.IOException
-
Java8FileDescriptorSocket
Java8FileDescriptorSocket(java.net.InetAddress address, int port, SSLParametersImpl sslParameters) throws java.io.IOException
- Throws:
java.io.IOException
-
Java8FileDescriptorSocket
Java8FileDescriptorSocket(java.lang.String hostname, int port, java.net.InetAddress clientAddress, int clientPort, SSLParametersImpl sslParameters) throws java.io.IOException
- Throws:
java.io.IOException
-
Java8FileDescriptorSocket
Java8FileDescriptorSocket(java.net.InetAddress address, int port, java.net.InetAddress clientAddress, int clientPort, SSLParametersImpl sslParameters) throws java.io.IOException
- Throws:
java.io.IOException
-
Java8FileDescriptorSocket
Java8FileDescriptorSocket(java.net.Socket socket, java.lang.String hostname, int port, boolean autoClose, SSLParametersImpl sslParameters) throws java.io.IOException
- Throws:
java.io.IOException
-
-
Method Detail
-
setHandshakeApplicationProtocolSelector
public void setHandshakeApplicationProtocolSelector(java.util.function.BiFunction<javax.net.ssl.SSLSocket,java.util.List<java.lang.String>,java.lang.String> selector)
- Overrides:
setHandshakeApplicationProtocolSelector
in classjavax.net.ssl.SSLSocket
-
getHandshakeApplicationProtocolSelector
public java.util.function.BiFunction<javax.net.ssl.SSLSocket,java.util.List<java.lang.String>,java.lang.String> getHandshakeApplicationProtocolSelector()
- Overrides:
getHandshakeApplicationProtocolSelector
in classjavax.net.ssl.SSLSocket
-
toApplicationProtocolSelector
private static ApplicationProtocolSelector toApplicationProtocolSelector(java.util.function.BiFunction<javax.net.ssl.SSLSocket,java.util.List<java.lang.String>,java.lang.String> selector)
-
-