summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/broker/Queue.cpp
diff options
context:
space:
mode:
authorKim van der Riet <kpvdr@apache.org>2008-04-03 12:41:40 +0000
committerKim van der Riet <kpvdr@apache.org>2008-04-03 12:41:40 +0000
commit833239ec44ea87a1b619eef3de55afde56c7ee45 (patch)
treec4d51996de1f0b3c6b43f1dfab7a0e741458ba29 /cpp/src/qpid/broker/Queue.cpp
parent799af7cedfce9deb22ce6390215aeda8d77c694c (diff)
downloadqpid-python-833239ec44ea87a1b619eef3de55afde56c7ee45.tar.gz
Patch from Ted Ross (see QPID-893): This patch enables management of plugged-in store modules.
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@644287 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src/qpid/broker/Queue.cpp')
-rw-r--r--cpp/src/qpid/broker/Queue.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/cpp/src/qpid/broker/Queue.cpp b/cpp/src/qpid/broker/Queue.cpp
index 436431fce1..a405971805 100644
--- a/cpp/src/qpid/broker/Queue.cpp
+++ b/cpp/src/qpid/broker/Queue.cpp
@@ -632,6 +632,18 @@ bool Queue::hasExclusiveConsumer() const
return exclusive;
}
+void Queue::setExternalQueueStore(ExternalQueueStore* inst) {
+ if (externalQueueStore!=inst && externalQueueStore)
+ delete externalQueueStore;
+ externalQueueStore = inst;
+
+ if (inst) {
+ ManagementObject::shared_ptr childObj = inst->GetManagementObject();
+ if (childObj.get() != 0)
+ mgmtObject->set_storeRef(childObj->getObjectId());
+ }
+}
+
ManagementObject::shared_ptr Queue::GetManagementObject (void) const
{
return dynamic_pointer_cast<ManagementObject> (mgmtObject);