diff options
Diffstat (limited to 'cpp/src/qpid/broker/QueueRegistry.cpp')
-rw-r--r-- | cpp/src/qpid/broker/QueueRegistry.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/cpp/src/qpid/broker/QueueRegistry.cpp b/cpp/src/qpid/broker/QueueRegistry.cpp index 6c87e5ff98..bc572e4238 100644 --- a/cpp/src/qpid/broker/QueueRegistry.cpp +++ b/cpp/src/qpid/broker/QueueRegistry.cpp @@ -59,8 +59,7 @@ QueueRegistry::declare(const string& declareName, bool durable, } } -void QueueRegistry::destroy(const string& name){ - RWlock::ScopedWlock locker(lock); +void QueueRegistry::destroyLH (const string& name){ if (managementAgent){ ManagementObjectQueue::shared_ptr mgmtObject; QueueMap::iterator i = queues.find(name); @@ -74,6 +73,11 @@ void QueueRegistry::destroy(const string& name){ queues.erase(name); } +void QueueRegistry::destroy (const string& name){ + RWlock::ScopedWlock locker(lock); + destroyLH (name); +} + Queue::shared_ptr QueueRegistry::find(const string& name){ RWlock::ScopedRlock locker(lock); QueueMap::iterator i = queues.find(name); |