in src/qpid/messaging/ConnectionOptions.cpp [67:144]
void ConnectionOptions::set(const std::string& name, const qpid::types::Variant& value)
{
if (name == "reconnect") {
reconnect = value;
} else if (name == "reconnect-timeout" || name == "reconnect_timeout") {
timeout = timeValue(value);
} else if (name == "reconnect-limit" || name == "reconnect_limit") {
limit = value;
} else if (name == "reconnect-interval" || name == "reconnect_interval") {
maxReconnectInterval = minReconnectInterval = timeValue(value);
} else if (name == "reconnect-interval-min" || name == "reconnect_interval_min") {
minReconnectInterval = timeValue(value);
} else if (name == "reconnect-interval-max" || name == "reconnect_interval_max") {
maxReconnectInterval = timeValue(value);
} else if (name == "reconnect-urls-replace" || name == "reconnect_urls_replace") {
replaceUrls = value.asBool();
} else if (name == "reconnect-urls" || name == "reconnect_urls") {
if (replaceUrls) urls.clear();
if (value.getType() == qpid::types::VAR_LIST) {
merge(value.asList(), urls);
} else {
merge(value.asString(), urls);
}
} else if (name == "username") {
username = value.asString();
} else if (name == "password") {
password = value.asString();
} else if (name == "sasl-mechanism" || name == "sasl_mechanism" ||
name == "sasl-mechanisms" || name == "sasl_mechanisms") {
mechanism = value.asString();
} else if (name == "sasl-service" || name == "sasl_service") {
service = value.asString();
} else if (name == "sasl-min-ssf" || name == "sasl_min_ssf") {
minSsf = value;
} else if (name == "sasl-max-ssf" || name == "sasl_max_ssf") {
maxSsf = value;
} else if (name == "heartbeat") {
heartbeat = value;
} else if (name == "tcp-nodelay" || name == "tcp_nodelay") {
tcpNoDelay = value;
} else if (name == "locale") {
locale = value.asString();
} else if (name == "max-channels" || name == "max_channels") {
maxChannels = value;
} else if (name == "max-frame-size" || name == "max_frame_size") {
maxFrameSize = value;
} else if (name == "bounds") {
bounds = value;
} else if (name == "transport") {
protocol = value.asString();
} else if (name == "ssl-cert-name" || name == "ssl_cert_name") {
sslCertName = value.asString();
} else if (name == "ssl-ignore-hostname-verification-failure" || name == "ssl_ignore_hostname_verification_failure") {
sslIgnoreHostnameVerificationFailure = value;
} else if (name == "x-reconnect-on-limit-exceeded" || name == "x_reconnect_on_limit_exceeded") {
reconnectOnLimitExceeded = value;
} else if (name == "container-id" || name == "container_id") {
identifier = value.asString();
} else if (name == "nest-annotations" || name == "nest_annotations") {
nestAnnotations = value;
} else if (name == "set-to-on-send" || name == "set_to_on_send") {
setToOnSend = value;
} else if (name == "address-passthrough" || name == "address_passthrough") {
addressPassthrough = value;
} else if (name == "max-delivery-attempts" || name == "max_delivery_attempts") {
maxDeliveryAttempts = value;
} else if (name == "raise-rejected" || name == "raise_rejected") {
raiseRejected = value;
} else if (name == "redelivery-timeout" || name == "redelivery_timeout") {
redeliveryTimeout = timeValue(value);
} else if (name == "properties" || name == "client-properties" || name == "client_properties") {
properties = value.asMap();
} else if (name == "virtualhost") {
virtualhost = value.asString();
} else {
throw qpid::messaging::MessagingException(QPID_MSG("Invalid option: " << name << " not recognised"));
}
}