diff options
| author | Ted Ross <tross@apache.org> | 2009-09-17 19:27:52 +0000 |
|---|---|---|
| committer | Ted Ross <tross@apache.org> | 2009-09-17 19:27:52 +0000 |
| commit | b2d40ca499e2e0a4cee09810c862facf08a70b0c (patch) | |
| tree | 9aa2be1494e299ff6638616db203a3cc33dc8425 /qpid/cpp/src/qmf/ObjectImpl.h | |
| parent | 8812075d3a910236ffdadbd2faa58f5944366db0 (diff) | |
| download | qpid-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.h | 7 |
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; |
