@Override public SSLEngine newSSLEngine(String peerHost, int peerPort) throws GeneralSecurityException { SSLContext sslContext = SslUtils.getInstance().getSSLContext(config); SSLEngine sslEngine = sslContext.createSSLEngine(peerHost, peerPort); if (!config.isAcceptAnyCertificate()) { SSLParameters params = sslEngine.getSSLParameters(); params.setEndpointIdentificationAlgorithm("HTTPS"); sslEngine.setSSLParameters(params); } sslEngine.setUseClientMode(true); if (isNonEmpty(config.getEnabledProtocols())) sslEngine.setEnabledProtocols(config.getEnabledProtocols()); if (isNonEmpty(config.getEnabledCipherSuites())) sslEngine.setEnabledCipherSuites(config.getEnabledCipherSuites()); return sslEngine; } }