@Override
public void connect(String host, int port, String user, String password,
Authentication authenType, SSLContext context,
SSLHostnameVerifier verifier) {
X509HostnameVerifier x509Verifier = null;
if (verifier == null) {
if (context != null)
x509Verifier = SSLSocketFactory.BROWSER_COMPATIBLE_HOSTNAME_VERIFIER;
}
else if (verifier == SSLHostnameVerifier.ANY)
x509Verifier = SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER;
else if (verifier == SSLHostnameVerifier.COMMON)
x509Verifier = SSLSocketFactory.BROWSER_COMPATIBLE_HOSTNAME_VERIFIER;
else if (verifier == SSLHostnameVerifier.STRICT)
x509Verifier = SSLSocketFactory.STRICT_HOSTNAME_VERIFIER;
else if (context != null)
x509Verifier = new HostnameVerifierAdapter(verifier);
else
throw new IllegalArgumentException(
"Null SSLContent but non-null SSLHostnameVerifier for client");
connect(host, port, user, password, authenType, context, x509Verifier);
}