Package org.apache.http.nio.conn.ssl
Class SSLIOSessionStrategy
- java.lang.Object
-
- org.apache.http.nio.conn.ssl.SSLIOSessionStrategy
-
- All Implemented Interfaces:
SchemeIOSessionStrategy
public class SSLIOSessionStrategy extends java.lang.Object implements SchemeIOSessionStrategy
TLS/SSL transport level security strategy.- Since:
- 4.0
-
-
Field Summary
Fields Modifier and Type Field Description static org.apache.http.conn.ssl.X509HostnameVerifier
ALLOW_ALL_HOSTNAME_VERIFIER
Deprecated.static org.apache.http.conn.ssl.X509HostnameVerifier
BROWSER_COMPATIBLE_HOSTNAME_VERIFIER
Deprecated.private javax.net.ssl.HostnameVerifier
hostnameVerifier
private javax.net.ssl.SSLContext
sslContext
static org.apache.http.conn.ssl.X509HostnameVerifier
STRICT_HOSTNAME_VERIFIER
Deprecated.private java.lang.String[]
supportedCipherSuites
private java.lang.String[]
supportedProtocols
-
Constructor Summary
Constructors Constructor Description SSLIOSessionStrategy(javax.net.ssl.SSLContext sslcontext)
SSLIOSessionStrategy(javax.net.ssl.SSLContext sslContext, java.lang.String[] supportedProtocols, java.lang.String[] supportedCipherSuites, javax.net.ssl.HostnameVerifier hostnameVerifier)
SSLIOSessionStrategy(javax.net.ssl.SSLContext sslContext, java.lang.String[] supportedProtocols, java.lang.String[] supportedCipherSuites, org.apache.http.conn.ssl.X509HostnameVerifier hostnameVerifier)
SSLIOSessionStrategy(javax.net.ssl.SSLContext sslcontext, javax.net.ssl.HostnameVerifier hostnameVerifier)
SSLIOSessionStrategy(javax.net.ssl.SSLContext sslcontext, org.apache.http.conn.ssl.X509HostnameVerifier hostnameVerifier)
Deprecated.(4.1)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static javax.net.ssl.HostnameVerifier
getDefaultHostnameVerifier()
static SSLIOSessionStrategy
getDefaultStrategy()
static SSLIOSessionStrategy
getSystemDefaultStrategy()
protected void
initializeEngine(javax.net.ssl.SSLEngine engine)
boolean
isLayeringRequired()
Determines whether or not protocol layering is required.private static java.lang.String[]
split(java.lang.String s)
org.apache.http.nio.reactor.ssl.SSLIOSession
upgrade(org.apache.http.HttpHost host, org.apache.http.nio.reactor.IOSession iosession)
Decorates the originalIOSession
with a transport level security protocol implementation.protected void
verifySession(org.apache.http.HttpHost host, org.apache.http.nio.reactor.IOSession iosession, javax.net.ssl.SSLSession sslsession)
-
-
-
Field Detail
-
ALLOW_ALL_HOSTNAME_VERIFIER
@Deprecated public static final org.apache.http.conn.ssl.X509HostnameVerifier ALLOW_ALL_HOSTNAME_VERIFIER
Deprecated.
-
BROWSER_COMPATIBLE_HOSTNAME_VERIFIER
@Deprecated public static final org.apache.http.conn.ssl.X509HostnameVerifier BROWSER_COMPATIBLE_HOSTNAME_VERIFIER
Deprecated.
-
STRICT_HOSTNAME_VERIFIER
@Deprecated public static final org.apache.http.conn.ssl.X509HostnameVerifier STRICT_HOSTNAME_VERIFIER
Deprecated.
-
sslContext
private final javax.net.ssl.SSLContext sslContext
-
supportedProtocols
private final java.lang.String[] supportedProtocols
-
supportedCipherSuites
private final java.lang.String[] supportedCipherSuites
-
hostnameVerifier
private final javax.net.ssl.HostnameVerifier hostnameVerifier
-
-
Constructor Detail
-
SSLIOSessionStrategy
@Deprecated public SSLIOSessionStrategy(javax.net.ssl.SSLContext sslContext, java.lang.String[] supportedProtocols, java.lang.String[] supportedCipherSuites, org.apache.http.conn.ssl.X509HostnameVerifier hostnameVerifier)
-
SSLIOSessionStrategy
@Deprecated public SSLIOSessionStrategy(javax.net.ssl.SSLContext sslcontext, org.apache.http.conn.ssl.X509HostnameVerifier hostnameVerifier)
Deprecated.(4.1)
-
SSLIOSessionStrategy
public SSLIOSessionStrategy(javax.net.ssl.SSLContext sslContext, java.lang.String[] supportedProtocols, java.lang.String[] supportedCipherSuites, javax.net.ssl.HostnameVerifier hostnameVerifier)
- Since:
- 4.1
-
SSLIOSessionStrategy
public SSLIOSessionStrategy(javax.net.ssl.SSLContext sslcontext, javax.net.ssl.HostnameVerifier hostnameVerifier)
- Since:
- 4.1
-
SSLIOSessionStrategy
public SSLIOSessionStrategy(javax.net.ssl.SSLContext sslcontext)
-
-
Method Detail
-
split
private static java.lang.String[] split(java.lang.String s)
-
getDefaultHostnameVerifier
public static javax.net.ssl.HostnameVerifier getDefaultHostnameVerifier()
- Since:
- 4.1
-
getDefaultStrategy
public static SSLIOSessionStrategy getDefaultStrategy()
-
getSystemDefaultStrategy
public static SSLIOSessionStrategy getSystemDefaultStrategy()
-
upgrade
public org.apache.http.nio.reactor.ssl.SSLIOSession upgrade(org.apache.http.HttpHost host, org.apache.http.nio.reactor.IOSession iosession) throws java.io.IOException
Description copied from interface:SchemeIOSessionStrategy
Decorates the originalIOSession
with a transport level security protocol implementation.- Specified by:
upgrade
in interfaceSchemeIOSessionStrategy
- Parameters:
host
- the target host.iosession
- the I/O session.- Returns:
- upgraded I/O session.
- Throws:
java.io.IOException
-
initializeEngine
protected void initializeEngine(javax.net.ssl.SSLEngine engine)
-
verifySession
protected void verifySession(org.apache.http.HttpHost host, org.apache.http.nio.reactor.IOSession iosession, javax.net.ssl.SSLSession sslsession) throws javax.net.ssl.SSLException
- Throws:
javax.net.ssl.SSLException
-
isLayeringRequired
public boolean isLayeringRequired()
Description copied from interface:SchemeIOSessionStrategy
Determines whether or not protocol layering is required. If this method returnsfalse
theupgrade
method is expected to have no effect and should not be called.- Specified by:
isLayeringRequired
in interfaceSchemeIOSessionStrategy
-
-