Class EwsSSLProtocolSocketFactory
- java.lang.Object
-
- org.apache.http.conn.ssl.SSLConnectionSocketFactory
-
- microsoft.exchange.webservices.data.core.EwsSSLProtocolSocketFactory
-
- All Implemented Interfaces:
org.apache.http.conn.socket.ConnectionSocketFactory,org.apache.http.conn.socket.LayeredConnectionSocketFactory
public class EwsSSLProtocolSocketFactory extends org.apache.http.conn.ssl.SSLConnectionSocketFactory
EwsSSLProtocolSocketFactory can be used to create SSL
Sockets that accept self-signed certificates.This socket factory SHOULD NOT be used for productive systems due to security reasons, unless it is a conscious decision and you are perfectly aware of security implications of accepting self-signed certificates
Example of using custom protocol socket factory for a specific host:
Protocol easyhttps = new Protocol("https", new EasySSLProtocolSocketFactory(), 443); URI uri = new URI("https://localhost/", true); // use relative url only GetMethod httpget = new GetMethod(uri.getPathQuery()); HostConfiguration hc = new HostConfiguration(); hc.setHost(uri.getHost(), uri.getPort(), easyhttps); HttpClient client = new HttpClient(); client.executeMethod(hc, httpget);Example of using custom protocol socket factory per default instead of the standard one:
Protocol easyhttps = new Protocol("https", new EasySSLProtocolSocketFactory(), 443); Protocol.registerProtocol("https", easyhttps); HttpClient client = new HttpClient(); GetMethod httpget = new GetMethod("https://localhost/"); client.executeMethod(httpget);DISCLAIMER: HttpClient developers DO NOT actively support this component. The component is provided as a reference material, which may be inappropriate for use without additional customization.
-
-
Constructor Summary
Constructors Constructor Description EwsSSLProtocolSocketFactory(SSLContext context, HostnameVerifier hostnameVerifier)Constructor for EasySSLProtocolSocketFactory.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static EwsSSLProtocolSocketFactorybuild(TrustManager trustManager)Create and configure SSL protocol socket factory using default hostname verifier.static EwsSSLProtocolSocketFactorybuild(TrustManager trustManager, HostnameVerifier hostnameVerifier)Create and configure SSL protocol socket factory using trust manager and hostname verifier.static SSLContextcreateSslContext(TrustManager trustManager)Create SSL context and initialize it using specific trust manager.booleanequals(Object obj)SSLContextgetContext()inthashCode()
-
-
-
Constructor Detail
-
EwsSSLProtocolSocketFactory
public EwsSSLProtocolSocketFactory(SSLContext context, HostnameVerifier hostnameVerifier)
Constructor for EasySSLProtocolSocketFactory.- Parameters:
context- SSL contexthostnameVerifier- hostname verifier
-
-
Method Detail
-
build
public static EwsSSLProtocolSocketFactory build(TrustManager trustManager) throws GeneralSecurityException
Create and configure SSL protocol socket factory using default hostname verifier.DEFAULT_HOSTNAME_VERIFIER- Parameters:
trustManager- trust manager- Returns:
- socket factory for SSL protocol
- Throws:
GeneralSecurityException- on security error
-
build
public static EwsSSLProtocolSocketFactory build(TrustManager trustManager, HostnameVerifier hostnameVerifier) throws GeneralSecurityException
Create and configure SSL protocol socket factory using trust manager and hostname verifier.- Parameters:
trustManager- trust managerhostnameVerifier- hostname verifier- Returns:
- socket factory for SSL protocol
- Throws:
GeneralSecurityException- on security error
-
createSslContext
public static SSLContext createSslContext(TrustManager trustManager) throws GeneralSecurityException
Create SSL context and initialize it using specific trust manager.- Parameters:
trustManager- trust manager- Returns:
- initialized SSL context
- Throws:
GeneralSecurityException- on security error
-
getContext
public SSLContext getContext()
- Returns:
- SSL context
-
-