protected DatabaseClientFactory.SecurityContext buildCertificateAuthContent(DatabaseClientConfig config) {
X509TrustManager trustManager = config.getTrustManager();
String certFile = config.getCertFile();
if (certFile != null) {
try {
if (config.getCertPassword() != null) {
return new DatabaseClientFactory.CertificateAuthContext(certFile, config.getCertPassword(), trustManager);
}
return new DatabaseClientFactory.CertificateAuthContext(certFile, trustManager);
} catch (Exception ex) {
throw new RuntimeException("Unable to build CertificateAuthContext: " + ex.getMessage(), ex);
}
}
DatabaseClientFactory.SSLHostnameVerifier verifier = config.getSslHostnameVerifier();
if (verifier != null) {
return new DatabaseClientFactory.CertificateAuthContext(config.getSslContext(), verifier, trustManager);
}
return new DatabaseClientFactory.CertificateAuthContext(config.getSslContext(), trustManager);
}
}