summaryrefslogtreecommitdiffstats
path: root/extensions/openpower-pels/manager.cpp
diff options
context:
space:
mode:
authorMatt Spinler <spinler@us.ibm.com>2019-07-09 13:22:32 -0500
committerMatt Spinler <spinler@us.ibm.com>2019-07-26 12:48:15 -0500
commit4e8078c007d3b749d8dccfd629a03fc759411906 (patch)
tree5d7f50adaf435006162781a8f584638d9c11df17 /extensions/openpower-pels/manager.cpp
parent15ee6aee19ec5357392078dfe692b7f02baeb725 (diff)
downloadphosphor-logging-4e8078c007d3b749d8dccfd629a03fc759411906.tar.gz
phosphor-logging-4e8078c007d3b749d8dccfd629a03fc759411906.zip
PEL: Add PEL Manager class
This class will have the logic for how to handle PELs. It will also eventually provide D-Bus interfaces. This first commit has stubs, plus some basic code to find if a PEL is being passed in with the OpenBMC event log. Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: I55a5da4d2239c688fded31c112895c3c92bab56d
Diffstat (limited to 'extensions/openpower-pels/manager.cpp')
-rw-r--r--extensions/openpower-pels/manager.cpp59
1 files changed, 59 insertions, 0 deletions
diff --git a/extensions/openpower-pels/manager.cpp b/extensions/openpower-pels/manager.cpp
new file mode 100644
index 0000000..3e22336
--- /dev/null
+++ b/extensions/openpower-pels/manager.cpp
@@ -0,0 +1,59 @@
+#include "manager.hpp"
+
+#include "additional_data.hpp"
+
+namespace openpower
+{
+namespace pels
+{
+
+using namespace phosphor::logging;
+
+namespace additional_data
+{
+constexpr auto rawPEL = "RAWPEL";
+}
+
+void Manager::create(const std::string& message, uint32_t obmcLogID,
+ uint64_t timestamp, Entry::Level severity,
+ const std::vector<std::string>& additionalData,
+ const std::vector<std::string>& associations)
+{
+ AdditionalData ad{additionalData};
+
+ // If a PEL was passed in, use that. Otherwise, create one.
+ auto rawPelPath = ad.getValue(additional_data::rawPEL);
+ if (rawPelPath)
+ {
+ addRawPEL(*rawPelPath, obmcLogID);
+ }
+ else
+ {
+ createPEL(message, obmcLogID, timestamp, severity, additionalData,
+ associations);
+ }
+}
+
+void Manager::addRawPEL(const std::string& rawPelPath, uint32_t obmcLogID)
+{
+}
+
+void Manager::erase(uint32_t obmcLogID)
+{
+}
+
+bool Manager::isDeleteProhibited(uint32_t obmcLogID)
+{
+ return false;
+}
+
+void Manager::createPEL(const std::string& message, uint32_t obmcLogID,
+ uint64_t timestamp,
+ phosphor::logging::Entry::Level severity,
+ const std::vector<std::string>& additionalData,
+ const std::vector<std::string>& associations)
+{
+}
+
+} // namespace pels
+} // namespace openpower
OpenPOWER on IntegriCloud