summaryrefslogtreecommitdiff
path: root/qpid/cpp/src/qmf/ObjectImpl.h
diff options
context:
space:
mode:
authorTed Ross <tross@apache.org>2009-09-17 19:27:52 +0000
committerTed Ross <tross@apache.org>2009-09-17 19:27:52 +0000
commitb2d40ca499e2e0a4cee09810c862facf08a70b0c (patch)
tree9aa2be1494e299ff6638616db203a3cc33dc8425 /qpid/cpp/src/qmf/ObjectImpl.h
parent8812075d3a910236ffdadbd2faa58f5944366db0 (diff)
downloadqpid-python-b2d40ca499e2e0a4cee09810c862facf08a70b0c.tar.gz
QMF Console
- Added implementation for method invocation - Added metaprogramming hooks in Ruby for attribute and method access - Refactored file structure git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@816345 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/cpp/src/qmf/ObjectImpl.h')
-rw-r--r--qpid/cpp/src/qmf/ObjectImpl.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/qpid/cpp/src/qmf/ObjectImpl.h b/qpid/cpp/src/qmf/ObjectImpl.h
index d69979e0da..4ac5a31b54 100644
--- a/qpid/cpp/src/qmf/ObjectImpl.h
+++ b/qpid/cpp/src/qmf/ObjectImpl.h
@@ -31,11 +31,14 @@
namespace qmf {
+ class BrokerProxyImpl;
+
struct ObjectImpl {
typedef boost::shared_ptr<ObjectImpl> Ptr;
typedef boost::shared_ptr<Value> ValuePtr;
Object* envelope;
const SchemaObjectClass* objectClass;
+ BrokerProxyImpl* broker;
boost::shared_ptr<ObjectIdImpl> objectId;
uint64_t createTime;
uint64_t destroyTime;
@@ -44,7 +47,8 @@ namespace qmf {
mutable std::map<std::string, ValuePtr> statistics;
ObjectImpl(Object* e, const SchemaObjectClass* type);
- ObjectImpl(const SchemaObjectClass* type, qpid::framing::Buffer& buffer, bool prop, bool stat, bool managed);
+ ObjectImpl(const SchemaObjectClass* type, BrokerProxyImpl* b, qpid::framing::Buffer& buffer,
+ bool prop, bool stat, bool managed);
~ObjectImpl();
void destroy();
@@ -52,6 +56,7 @@ namespace qmf {
void setObjectId(ObjectId* oid) { objectId.reset(oid->impl); }
const SchemaObjectClass* getClass() const { return objectClass; }
Value* getValue(const std::string& key) const;
+ void invokeMethod(const std::string& methodName, const Value* inArgs, void* context) const;
void parsePresenceMasks(qpid::framing::Buffer& buffer, std::set<std::string>& excludeList);
void encodeSchemaKey(qpid::framing::Buffer& buffer) const;