QPID-8300: add support for virtualhost option to 1.0 path
diff --git a/src/qpid/messaging/ConnectionOptions.cpp b/src/qpid/messaging/ConnectionOptions.cpp
index 24ea1f8..56ba3bd 100644
--- a/src/qpid/messaging/ConnectionOptions.cpp
+++ b/src/qpid/messaging/ConnectionOptions.cpp
@@ -136,6 +136,8 @@
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"));
}
diff --git a/src/qpid/messaging/amqp/ConnectionContext.cpp b/src/qpid/messaging/amqp/ConnectionContext.cpp
index 5d3a1e3..9894459 100644
--- a/src/qpid/messaging/amqp/ConnectionContext.cpp
+++ b/src/qpid/messaging/amqp/ConnectionContext.cpp
@@ -1361,6 +1361,9 @@
void ConnectionContext::configureConnection()
{
pn_connection_set_container(connection, identifier.c_str());
+ if (virtualhost.size()) {
+ pn_connection_set_hostname(connection, virtualhost.c_str());
+ }
setProperties();
if (heartbeat) {
// fail an idle connection at 2 x heartbeat (in msecs)