managed store: hide headers
Moved some functions to source files. Already corrected system header
includes.
Change-Id: I741cf40bcdc2ad25a08267ae0ab1db8a40630897
Signed-off-by: Nan Zhou <nanzhou@google.com>
diff --git a/include/managed_store.hpp b/include/managed_store.hpp
index 6a65ed7..1da0e37 100644
--- a/include/managed_store.hpp
+++ b/include/managed_store.hpp
@@ -1,13 +1,12 @@
#pragma once
#include "dbus_utility.hpp"
-#include "managed_store_clock.hpp"
#include "managed_store_types.hpp"
-#include "nlohmann/json.hpp"
#include <boost/asio/io_context.hpp>
#include <boost/asio/steady_timer.hpp>
#include <boost/system/error_code.hpp>
+#include <nlohmann/json.hpp>
#include <sdbusplus/asio/property.hpp>
#include <sdbusplus/message/native_types.hpp>
diff --git a/include/managed_store_types.hpp b/include/managed_store_types.hpp
index e78a9f1..6504d84 100644
--- a/include/managed_store_types.hpp
+++ b/include/managed_store_types.hpp
@@ -3,10 +3,9 @@
#include "async_resp.hpp"
#include "dbus_utility.hpp"
#include "managed_store_clock.hpp"
-#include "nlohmann/json.hpp"
-#include "str_utility.hpp"
#include <boost/algorithm/string/join.hpp>
+#include <nlohmann/json.hpp>
#include <chrono>
#include <list>
@@ -185,49 +184,7 @@
constexpr static const char kSep = '|';
// TODO:: rename to toKey() ?
- std::string toString() const
- {
- std::string ret;
- bmcweb::append_with_sep(ret, kSep, std::to_string(managedElementType));
-
- switch (managedElementType)
- {
- case ManagedType::kManagedObject:
- {
- bmcweb::append_with_sep(ret, kSep, serviceName, objectPath.str);
- break;
- }
- case ManagedType::kManagedPropertyMap:
- {
- bmcweb::append_with_sep(ret, kSep, serviceName, objectPath.str,
- interface);
- break;
- }
- case ManagedType::kManagedProperty:
- {
- bmcweb::append_with_sep(ret, kSep, serviceName, objectPath.str,
- interface, property);
- break;
- }
- case ManagedType::kManagedSubtree:
- case ManagedType::kManagedSubtreePaths:
- case ManagedType::kManagedAssociatedSubtree:
- case ManagedType::kManagedAssociatedSubtreePaths:
- {
- std::string interfaceListStr;
- for (const std::string& interfaceStr : interfaceList)
- {
- bmcweb::append_with_sep(interfaceListStr, ',',
- interfaceStr);
- }
- bmcweb::append_with_sep(ret, kSep, objectPath.str,
- std::to_string(treeDepth),
- interfaceListStr, associatedPath.str);
- break;
- }
- }
- return ret;
- }
+ std::string toString() const;
// TODO:: KeyType is public now, should we deprecate this API?
static void fromKey(const std::string& key, std::string& serviceName,
diff --git a/redfish-core/include/query.cpp b/redfish-core/include/query.cpp
index b6e8e41..6392a3d 100644
--- a/redfish-core/include/query.cpp
+++ b/redfish-core/include/query.cpp
@@ -7,6 +7,7 @@
#include "error_messages.hpp"
#include "logging.hpp"
#include "redfish_aggregator.hpp"
+#include "str_utility.hpp"
#include <boost/beast/http/verb.hpp>
#include <boost/url/params_view.hpp>
diff --git a/src/managed_store.cpp b/src/managed_store.cpp
index 7eca97d..cb7fda5 100644
--- a/src/managed_store.cpp
+++ b/src/managed_store.cpp
@@ -1,6 +1,9 @@
#include "managed_store.hpp"
#include "dbus_utility.hpp"
+#include "managed_store_clock.hpp"
+#include "managed_store_types.hpp"
+#include "str_utility.hpp"
#include <boost/asio/io_context.hpp>
#include <boost/system/error_code.hpp>
@@ -789,7 +792,7 @@
ValueType value(propertyValue, ec, timeNow,
timeNow + this->config.tfixedThreshold);
callback(value);
- });
+ });
}
void ManagedObjectStore::getManagedPropertiesMapFromDbusService(
@@ -909,4 +912,47 @@
return obj;
}
+std::string KeyType::toString() const
+{
+ std::string ret;
+ bmcweb::append_with_sep(ret, kSep, std::to_string(managedElementType));
+
+ switch (managedElementType)
+ {
+ case ManagedType::kManagedObject:
+ {
+ bmcweb::append_with_sep(ret, kSep, serviceName, objectPath.str);
+ break;
+ }
+ case ManagedType::kManagedPropertyMap:
+ {
+ bmcweb::append_with_sep(ret, kSep, serviceName, objectPath.str,
+ interface);
+ break;
+ }
+ case ManagedType::kManagedProperty:
+ {
+ bmcweb::append_with_sep(ret, kSep, serviceName, objectPath.str,
+ interface, property);
+ break;
+ }
+ case ManagedType::kManagedSubtree:
+ case ManagedType::kManagedSubtreePaths:
+ case ManagedType::kManagedAssociatedSubtree:
+ case ManagedType::kManagedAssociatedSubtreePaths:
+ {
+ std::string interfaceListStr;
+ for (const std::string& interfaceStr : interfaceList)
+ {
+ bmcweb::append_with_sep(interfaceListStr, ',', interfaceStr);
+ }
+ bmcweb::append_with_sep(ret, kSep, objectPath.str,
+ std::to_string(treeDepth), interfaceListStr,
+ associatedPath.str);
+ break;
+ }
+ }
+ return ret;
+}
+
} // namespace managedStore