in client/src/main/java/org/apache/qpid/client/BrokerDetails.java [455:630]
public ConnectionSettings buildConnectionSettings()
{
ConnectionSettings conSettings = new ConnectionSettings();
conSettings.setHost(getHost());
conSettings.setPort(getPort());
conSettings.setTransport(getTransport());
// ------------ sasl options ---------------
if (getProperty(BrokerDetails.OPTIONS_SASL_MECHS) != null)
{
conSettings.setSaslMechs(
getProperty(BrokerDetails.OPTIONS_SASL_MECHS));
}
// Sun SASL Kerberos client uses the
// protocol + servername as the service key.
if (getProperty(BrokerDetails.OPTIONS_SASL_PROTOCOL_NAME) != null)
{
conSettings.setSaslProtocol(
getProperty(BrokerDetails.OPTIONS_SASL_PROTOCOL_NAME));
}
if (getProperty(BrokerDetails.OPTIONS_SASL_SERVER_NAME) != null)
{
conSettings.setSaslServerName(
getProperty(BrokerDetails.OPTIONS_SASL_SERVER_NAME));
}
conSettings.setUseSASLEncryption(
getBooleanProperty(BrokerDetails.OPTIONS_SASL_ENCRYPTION));
// ------------- ssl options ---------------------
conSettings.setUseSSL(getBooleanProperty(BrokerDetails.OPTIONS_SSL));
if (getProperty(BrokerDetails.OPTIONS_TRUST_STORE) != null)
{
conSettings.setTrustStorePath(
getProperty(BrokerDetails.OPTIONS_TRUST_STORE));
}
if (getProperty(BrokerDetails.OPTIONS_TRUST_STORE_PASSWORD) != null)
{
conSettings.setTrustStorePassword(
getProperty(BrokerDetails.OPTIONS_TRUST_STORE_PASSWORD));
}
if (getProperty(BrokerDetails.OPTIONS_TRUST_STORE_TYPE) != null)
{
conSettings.setTrustStoreType(
getProperty(BrokerDetails.OPTIONS_TRUST_STORE_TYPE));
}
if (getProperty(BrokerDetails.OPTIONS_KEY_STORE) != null)
{
conSettings.setKeyStorePath(
getProperty(BrokerDetails.OPTIONS_KEY_STORE));
}
if (getProperty(BrokerDetails.OPTIONS_KEY_STORE_PASSWORD) != null)
{
conSettings.setKeyStorePassword(
getProperty(BrokerDetails.OPTIONS_KEY_STORE_PASSWORD));
}
if (getProperty(BrokerDetails.OPTIONS_KEY_STORE_TYPE) != null)
{
conSettings.setKeyStoreType(
getProperty(BrokerDetails.OPTIONS_KEY_STORE_TYPE));
}
if (getProperty(BrokerDetails.OPTIONS_SSL_CERT_ALIAS) != null)
{
conSettings.setCertAlias(
getProperty(BrokerDetails.OPTIONS_SSL_CERT_ALIAS));
}
if (getProperty(BrokerDetails.OPTIONS_CLIENT_CERT_PRIV_KEY_PATH) != null)
{
conSettings.setClientCertificatePrivateKeyPath(
getProperty(BrokerDetails.OPTIONS_CLIENT_CERT_PRIV_KEY_PATH));
}
if (getProperty(BrokerDetails.OPTIONS_CLIENT_CERT_PATH) != null)
{
conSettings.setClientCertificatePath(
getProperty(BrokerDetails.OPTIONS_CLIENT_CERT_PATH));
}
if (getProperty(BrokerDetails.OPTIONS_CLIENT_CERT_INTERMEDIARY_CERT_PATH) != null)
{
conSettings.setClientCertificateIntermediateCertsPath(
getProperty(BrokerDetails.OPTIONS_CLIENT_CERT_INTERMEDIARY_CERT_PATH));
}
if (getProperty(BrokerDetails.OPTIONS_TRUSTED_CERTIFICATES_PATH) != null)
{
conSettings.setTrustedCertificatesFile(
getProperty(BrokerDetails.OPTIONS_TRUSTED_CERTIFICATES_PATH));
}
// ----------------------------
boolean defaultSSLVerifyHostName = Boolean.parseBoolean(
System.getProperty(ClientProperties.CONNECTION_OPTION_SSL_VERIFY_HOST_NAME,
String.valueOf(ClientProperties.DEFAULT_CONNECTION_OPTION_SSL_VERIFY_HOST_NAME)));
conSettings.setVerifyHostname(getBooleanProperty(BrokerDetails.OPTIONS_SSL_VERIFY_HOSTNAME, defaultSSLVerifyHostName ));
// ----------------------------
if (getProperty(BrokerDetails.OPTIONS_ENCRYPTION_KEY_STORE) != null)
{
conSettings.setEncryptionKeyStorePath(
getProperty(BrokerDetails.OPTIONS_ENCRYPTION_KEY_STORE));
}
if (getProperty(BrokerDetails.OPTIONS_ENCRYPTION_KEY_STORE_PASSWORD) != null)
{
conSettings.setEncryptionKeyStorePassword(
getProperty(BrokerDetails.OPTIONS_ENCRYPTION_KEY_STORE_PASSWORD));
}
if (getProperty(BrokerDetails.OPTIONS_ENCRYPTION_KEY_STORE_TYPE) != null)
{
conSettings.setEncryptionKeyStoreType(
getProperty(BrokerDetails.OPTIONS_ENCRYPTION_KEY_STORE_TYPE));
}
if (getProperty(BrokerDetails.OPTIONS_ENCRYPTION_TRUST_STORE) != null)
{
conSettings.setEncryptionTrustStorePath(
getProperty(BrokerDetails.OPTIONS_ENCRYPTION_TRUST_STORE));
}
if (getProperty(BrokerDetails.OPTIONS_ENCRYPTION_TRUST_STORE_PASSWORD) != null)
{
conSettings.setEncryptionTrustStorePassword(
getProperty(BrokerDetails.OPTIONS_ENCRYPTION_TRUST_STORE_PASSWORD));
}
if (getProperty(BrokerDetails.OPTIONS_ENCRYPTION_TRUST_STORE_TYPE) != null)
{
conSettings.setEncryptionTrustStoreType(
getProperty(BrokerDetails.OPTIONS_ENCRYPTION_TRUST_STORE_TYPE));
}
if (getProperty(BrokerDetails.OPTIONS_ENCRYPTION_REMOTE_TRUST_STORE) != null)
{
conSettings.setEncryptionRemoteTrustStoreName(
getProperty(BrokerDetails.OPTIONS_ENCRYPTION_REMOTE_TRUST_STORE));
}
// ----------------------------
if (getProperty(BrokerDetails.OPTIONS_TCP_NO_DELAY) != null)
{
conSettings.setTcpNodelay(
getBooleanProperty(BrokerDetails.OPTIONS_TCP_NO_DELAY,true));
}
conSettings.setConnectTimeout(lookupConnectTimeout());
if (getProperty(BrokerDetails.OPTIONS_HEARTBEAT) != null)
{
conSettings.setHeartbeatInterval(getIntegerProperty(BrokerDetails.OPTIONS_HEARTBEAT));
}
else if (getProperty(BrokerDetails.OPTIONS_IDLE_TIMEOUT) != null)
{
conSettings.setHeartbeatInterval(getIntegerProperty(BrokerDetails.OPTIONS_IDLE_TIMEOUT) / 1000);
}
return conSettings;
}