summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKenneth Anthony Giusti <kgiusti@apache.org>2010-04-19 18:56:53 +0000
committerKenneth Anthony Giusti <kgiusti@apache.org>2010-04-19 18:56:53 +0000
commitf5cc88101cd67ad288811e96f334e71201e69db0 (patch)
tree03df2e21d6cbc3c8336891c257118a149de1ce47
parentf6f984c7108c2741a853e2437f00d8838f831783 (diff)
downloadqpid-python-f5cc88101cd67ad288811e96f334e71201e69db0.tar.gz
QMF: Add timestamps to generated V2 objects
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@935704 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r--qpid/cpp/include/qpid/management/ManagementObject.h12
-rw-r--r--qpid/cpp/src/qpid/agent/ManagementAgentImpl.cpp4
-rw-r--r--qpid/cpp/src/qpid/management/ManagementAgent.cpp5
-rw-r--r--qpid/cpp/src/qpid/management/ManagementObject.cpp46
4 files changed, 38 insertions, 29 deletions
diff --git a/qpid/cpp/include/qpid/management/ManagementObject.h b/qpid/cpp/include/qpid/management/ManagementObject.h
index da255d7879..9c2d14fa94 100644
--- a/qpid/cpp/include/qpid/management/ManagementObject.h
+++ b/qpid/cpp/include/qpid/management/ManagementObject.h
@@ -147,9 +147,7 @@ protected:
QPID_COMMON_EXTERN int getThreadIndex();
QPID_COMMON_EXTERN void writeTimestamps(std::string& buf) const;
- QPID_COMMON_EXTERN void writeTimestamps(types::Variant::Map& map) const;
QPID_COMMON_EXTERN void readTimestamps(const std::string& buf);
- QPID_COMMON_EXTERN void readTimestamps(const types::Variant::Map& buf);
QPID_COMMON_EXTERN uint32_t writeTimestampsSize() const;
public:
@@ -173,6 +171,8 @@ protected:
virtual void doMethod(std::string& methodName,
const types::Variant::Map& inMap,
types::Variant::Map& outMap) = 0;
+ QPID_COMMON_EXTERN void writeTimestamps(types::Variant::Map& map) const;
+ QPID_COMMON_EXTERN void readTimestamps(const types::Variant::Map& buf);
/**
* The following five methods are not pure-virtual because they will only
@@ -215,11 +215,11 @@ protected:
//QPID_COMMON_EXTERN uint32_t encodedSize() const { return writePropertiesSize(); }
// Encode/Decode the entire object as a map
- QPID_COMMON_EXTERN void mapEncode(types::Variant::Map& map,
- bool includeProperties=true,
- bool includeStatistics=true);
+ //QPID_COMMON_EXTERN void mapEncode(types::Variant::Map& map,
+ //bool includeProperties=true,
+ //bool includeStatistics=true);
- QPID_COMMON_EXTERN void mapDecode(const types::Variant::Map& map);
+ //QPID_COMMON_EXTERN void mapDecode(const types::Variant::Map& map);
};
typedef std::map<ObjectId, ManagementObject*> ManagementObjectMap;
diff --git a/qpid/cpp/src/qpid/agent/ManagementAgentImpl.cpp b/qpid/cpp/src/qpid/agent/ManagementAgentImpl.cpp
index 23cd284a2f..6bff91efd0 100644
--- a/qpid/cpp/src/qpid/agent/ManagementAgentImpl.cpp
+++ b/qpid/cpp/src/qpid/agent/ManagementAgentImpl.cpp
@@ -607,9 +607,11 @@ void ManagementAgentImpl::handleGetQuery(const string& body, const string& cid,
objId.mapEncode(oidMap);
map_["_values"] = values;
map_["_object_id"] = oidMap;
+ object->writeTimestamps(map_);
map_["_schema_id"] = mapEncodeSchemaId(object->getPackageName(),
object->getClassName(),
object->getMd5Sum());
+
list_.push_back(map_);
headers.erase("partial");
@@ -638,6 +640,7 @@ void ManagementAgentImpl::handleGetQuery(const string& body, const string& cid,
iter->first.mapEncode(oidMap);
map_["_values"] = values;
map_["_object_id"] = oidMap;
+ object->writeTimestamps(map_);
map_["_schema_id"] = mapEncodeSchemaId(object->getPackageName(),
object->getClassName(),
object->getMd5Sum());
@@ -940,6 +943,7 @@ void ManagementAgentImpl::periodicProcessing()
map_["_schema_id"] = mapEncodeSchemaId(object->getPackageName(),
object->getClassName(),
object->getMd5Sum());
+ object->writeTimestamps(map_);
object->mapEncodeValues(values, send_props, send_stats);
map_["_values"] = values;
list_.push_back(map_);
diff --git a/qpid/cpp/src/qpid/management/ManagementAgent.cpp b/qpid/cpp/src/qpid/management/ManagementAgent.cpp
index 7131207d7d..3e5bf1a362 100644
--- a/qpid/cpp/src/qpid/management/ManagementAgent.cpp
+++ b/qpid/cpp/src/qpid/management/ManagementAgent.cpp
@@ -675,6 +675,7 @@ void ManagementAgent::periodicProcessing (void)
object->getClassName(),
"_data",
object->getMd5Sum());
+ object->writeTimestamps(map_);
object->mapEncodeValues(values, send_props, send_stats);
map_["_values"] = values;
list_.push_back(map_);
@@ -762,6 +763,7 @@ void ManagementAgent::periodicProcessing (void)
(*cdIter)->getClassName(),
"_data",
(*cdIter)->getMd5Sum());
+ (*cdIter)->writeTimestamps(map_);
(*cdIter)->mapEncodeValues(values, true, false);
map_["_values"] = values;
list_.push_back(map_);
@@ -864,6 +866,7 @@ void ManagementAgent::deleteObjectNowLH(const ObjectId& oid)
object->getClassName(),
"_data",
object->getMd5Sum());
+ object->writeTimestamps(map_);
object->mapEncodeValues(values, true, false);
map_["_values"] = values;
list_.push_back(map_);
@@ -1646,6 +1649,7 @@ void ManagementAgent::handleGetQueryLH(const std::string& body, std::string repl
object->setUpdateTime();
if (!object->isDeleted()) {
+ object->writeTimestamps(map_);
object->mapEncodeValues(values, true, true); // write both stats and properties
map_["_values"] = values;
list_.push_back(map_);
@@ -1669,6 +1673,7 @@ void ManagementAgent::handleGetQueryLH(const std::string& body, std::string repl
object->setUpdateTime();
if (!object->isDeleted()) {
+ object->writeTimestamps(map_);
object->mapEncodeValues(values, true, true); // write both stats and properties
map_["_values"] = values;
list_.push_back(map_);
diff --git a/qpid/cpp/src/qpid/management/ManagementObject.cpp b/qpid/cpp/src/qpid/management/ManagementObject.cpp
index c0dd89b124..4167f20013 100644
--- a/qpid/cpp/src/qpid/management/ManagementObject.cpp
+++ b/qpid/cpp/src/qpid/management/ManagementObject.cpp
@@ -316,15 +316,15 @@ uint32_t ManagementObject::writeTimestampsSize() const
void ManagementObject::writeTimestamps (types::Variant::Map& map) const
{
- types::Variant::Map oid, sid;
+ // types::Variant::Map oid, sid;
- sid["_package_name"] = getPackageName();
- sid["_class_name"] = getClassName();
- sid["_hash"] = qpid::types::Uuid(getMd5Sum());
- map["_schema_id"] = sid;
+ // sid["_package_name"] = getPackageName();
+ // sid["_class_name"] = getClassName();
+ // sid["_hash"] = qpid::types::Uuid(getMd5Sum());
+ // map["_schema_id"] = sid;
- objectId.mapEncode(oid);
- map["_object_id"] = oid;
+ // objectId.mapEncode(oid);
+ // map["_object_id"] = oid;
map["_update_ts"] = updateTime;
map["_create_ts"] = createTime;
@@ -358,24 +358,24 @@ int ManagementObject::getThreadIndex() {
}
-void ManagementObject::mapEncode(types::Variant::Map& map,
- bool includeProperties,
- bool includeStatistics)
-{
- types::Variant::Map values;
+// void ManagementObject::mapEncode(types::Variant::Map& map,
+// bool includeProperties,
+// bool includeStatistics)
+// {
+// types::Variant::Map values;
- writeTimestamps(map);
+// writeTimestamps(map);
- mapEncodeValues(values, includeProperties, includeStatistics);
- map["_values"] = values;
-}
+// mapEncodeValues(values, includeProperties, includeStatistics);
+// map["_values"] = values;
+// }
-void ManagementObject::mapDecode(const types::Variant::Map& map)
-{
- types::Variant::Map::const_iterator i;
+// void ManagementObject::mapDecode(const types::Variant::Map& map)
+// {
+// types::Variant::Map::const_iterator i;
- readTimestamps(map);
+// readTimestamps(map);
- if ((i = map.find("_values")) != map.end())
- mapDecodeValues(i->second.asMap());
-}
+// if ((i = map.find("_values")) != map.end())
+// mapDecodeValues(i->second.asMap());
+// }