summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/management/ManagementObject.h
diff options
context:
space:
mode:
authorTed Ross <tross@apache.org>2008-11-21 20:17:22 +0000
committerTed Ross <tross@apache.org>2008-11-21 20:17:22 +0000
commit7bc808c71f28e7a58aeedbd6dcc450f1265d660c (patch)
treecf61755e35a6bd9454ff68733b97a347e5c7bea5 /cpp/src/qpid/management/ManagementObject.h
parent57c7e6d45483b94d4306eb93f285f4cbaa52bd57 (diff)
downloadqpid-python-7bc808c71f28e7a58aeedbd6dcc450f1265d660c.tar.gz
Fixed several problems related to qmf update timestamps:
- Timestamps were set at update send time regardless of whether the object's contents were actually changed. Now timestamps are set at the time of the change. - Agent heartbeat messages are now being sent after periodic updates, not before. Cleaned up the Agent object in qmf.console. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@719699 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src/qpid/management/ManagementObject.h')
-rw-r--r--cpp/src/qpid/management/ManagementObject.h12
1 files changed, 7 insertions, 5 deletions
diff --git a/cpp/src/qpid/management/ManagementObject.h b/cpp/src/qpid/management/ManagementObject.h
index a34f50ab8f..6f229353e3 100644
--- a/cpp/src/qpid/management/ManagementObject.h
+++ b/cpp/src/qpid/management/ManagementObject.h
@@ -114,6 +114,7 @@ class ManagementObject : public ManagementItem
uint64_t createTime;
uint64_t destroyTime;
+ uint64_t updateTime;
ObjectId objectId;
bool configChanged;
bool instChanged;
@@ -132,11 +133,11 @@ class ManagementObject : public ManagementItem
public:
typedef void (*writeSchemaCall_t) (qpid::framing::Buffer&);
- ManagementObject (ManagementAgent* _agent, Manageable* _core) :
- destroyTime(0), configChanged(true),
- instChanged(true), deleted(false), coreObject(_core), agent(_agent)
- { createTime = uint64_t (qpid::sys::Duration (qpid::sys::now ())); }
- virtual ~ManagementObject () {}
+ ManagementObject(ManagementAgent* _agent, Manageable* _core) :
+ createTime(uint64_t(qpid::sys::Duration(qpid::sys::now()))),
+ destroyTime(0), updateTime(createTime), configChanged(true),
+ instChanged(true), deleted(false), coreObject(_core), agent(_agent) {}
+ virtual ~ManagementObject() {}
virtual writeSchemaCall_t getWriteSchemaCall (void) = 0;
virtual void writeProperties(qpid::framing::Buffer& buf) = 0;
@@ -159,6 +160,7 @@ class ManagementObject : public ManagementItem
configChanged = true;
instChanged = true;
}
+ inline void setUpdateTime() { updateTime = (uint64_t(sys::Duration(sys::now()))); }
inline void resourceDestroy (void) {
destroyTime = uint64_t (qpid::sys::Duration (qpid::sys::now ()));