summaryrefslogtreecommitdiff
path: root/qpid/cpp/include
diff options
context:
space:
mode:
authorTed Ross <tross@apache.org>2012-11-30 19:17:28 +0000
committerTed Ross <tross@apache.org>2012-11-30 19:17:28 +0000
commitacbde11b61d7bb3a0cdd81e1201d8565a4cbdfbd (patch)
tree8b44f678894995ebe98deb128e407e6d80946668 /qpid/cpp/include
parent67dd5f7e03147e1e145f8d063b7b443ede02bb2e (diff)
downloadqpid-python-acbde11b61d7bb3a0cdd81e1201d8565a4cbdfbd.tar.gz
QPID-4449 - Reverted much of the original change and re-implemented the fix in a simpler way.
The build-define _IN_QPID_BROKER is now used for modules built in the broker. The shared-pointer changes are conditionally compiled only for in-broker cases. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1415796 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/cpp/include')
-rw-r--r--qpid/cpp/include/qpid/management/Manageable.h7
-rw-r--r--qpid/cpp/include/qpid/management/ManagementObject.h9
2 files changed, 13 insertions, 3 deletions
diff --git a/qpid/cpp/include/qpid/management/Manageable.h b/qpid/cpp/include/qpid/management/Manageable.h
index e72dc0b332..ede5c29e43 100644
--- a/qpid/cpp/include/qpid/management/Manageable.h
+++ b/qpid/cpp/include/qpid/management/Manageable.h
@@ -55,8 +55,11 @@ class QPID_COMMON_EXTERN Manageable
//
// This accessor function returns a pointer to the management object.
//
- virtual ManagementObject* GetManagementObject() const;
- virtual ManagementObject::shared_ptr GetManagementObjectShared() const;
+#ifdef _IN_QPID_BROKER
+ virtual ManagementObject::shared_ptr GetManagementObject() const = 0;
+#else
+ virtual ManagementObject* GetManagementObject() const = 0;
+#endif
// Every "Manageable" object must implement ManagementMethod. This
// function is called when a remote management client invokes a method
diff --git a/qpid/cpp/include/qpid/management/ManagementObject.h b/qpid/cpp/include/qpid/management/ManagementObject.h
index 2aca6fb1c5..93fbec7bc7 100644
--- a/qpid/cpp/include/qpid/management/ManagementObject.h
+++ b/qpid/cpp/include/qpid/management/ManagementObject.h
@@ -25,10 +25,13 @@
#include "qpid/management/Mutex.h"
#include "qpid/types/Variant.h"
-#include <boost/shared_ptr.hpp>
#include <map>
#include <vector>
+#ifdef _IN_QPID_BROKER
+#include <boost/shared_ptr.hpp>
+#endif
+
namespace qpid {
namespace management {
@@ -155,7 +158,9 @@ protected:
QPID_COMMON_EXTERN uint32_t writeTimestampsSize() const;
public:
+#ifdef _IN_QPID_BROKER
typedef boost::shared_ptr<ManagementObject> shared_ptr;
+#endif
QPID_COMMON_EXTERN static const uint8_t MD5_LEN = 16;
QPID_COMMON_EXTERN static int maxThreads;
@@ -229,8 +234,10 @@ protected:
//QPID_COMMON_EXTERN void mapDecode(const types::Variant::Map& map);
};
+#ifdef _IN_QPID_BROKER
typedef std::map<ObjectId, ManagementObject::shared_ptr> ManagementObjectMap;
typedef std::vector<ManagementObject::shared_ptr> ManagementObjectVector;
+#endif
}}