diff options
author | Alan Conway <aconway@apache.org> | 2009-05-04 17:22:33 +0000 |
---|---|---|
committer | Alan Conway <aconway@apache.org> | 2009-05-04 17:22:33 +0000 |
commit | cf3a9eb8cf578be00f0556ff5d93bfdf7c12aec8 (patch) | |
tree | 2b67937230ab3aaa1770f85125a77376d616dc05 /cpp/src/qpid/client/SubscriptionImpl.cpp | |
parent | 2407f9f523b0eeeb8988e30c797fdb46039fc3d3 (diff) | |
download | qpid-python-cf3a9eb8cf578be00f0556ff5d93bfdf7c12aec8.tar.gz |
Applied PIMPL pattern to SubscriptionManager.
Cleaned up some sloppy #includes.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@771366 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src/qpid/client/SubscriptionImpl.cpp')
-rw-r--r-- | cpp/src/qpid/client/SubscriptionImpl.cpp | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/cpp/src/qpid/client/SubscriptionImpl.cpp b/cpp/src/qpid/client/SubscriptionImpl.cpp index 69f79a1436..fb5808f3a6 100644 --- a/cpp/src/qpid/client/SubscriptionImpl.cpp +++ b/cpp/src/qpid/client/SubscriptionImpl.cpp @@ -19,11 +19,14 @@ * */ +#include "AsyncSession.h" #include "SubscriptionImpl.h" +#include "SubscriptionManagerImpl.h" #include "MessageImpl.h" #include "CompletionImpl.h" #include "SubscriptionManager.h" #include "SubscriptionSettings.h" +#include "PrivateImplRef.h" namespace qpid { namespace client { @@ -31,8 +34,8 @@ namespace client { using sys::Mutex; using framing::MessageAcquireResult; -SubscriptionImpl::SubscriptionImpl(SubscriptionManager& m, const std::string& q, const SubscriptionSettings& s, const std::string& n, MessageListener* l) - : manager(m), name(n), queue(q), settings(s), listener(l) +SubscriptionImpl::SubscriptionImpl(SubscriptionManager m, const std::string& q, const SubscriptionSettings& s, const std::string& n, MessageListener* l) + : manager(*PrivateImplRef<SubscriptionManager>::get(m)), name(n), queue(q), settings(s), listener(l) {} void SubscriptionImpl::subscribe() @@ -110,7 +113,7 @@ void SubscriptionImpl::release(const SequenceSet& messageIds) { Session SubscriptionImpl::getSession() const { return manager.getSession(); } -SubscriptionManager& SubscriptionImpl::getSubscriptionManager() const { return manager; } +SubscriptionManager SubscriptionImpl::getSubscriptionManager() { return SubscriptionManager(&manager); } void SubscriptionImpl::cancel() { manager.cancel(name); } |