diff options
Diffstat (limited to 'elog_watch.cpp')
-rw-r--r-- | elog_watch.cpp | 21 |
1 files changed, 8 insertions, 13 deletions
diff --git a/elog_watch.cpp b/elog_watch.cpp index e2a3866..6817f8b 100644 --- a/elog_watch.cpp +++ b/elog_watch.cpp @@ -28,7 +28,6 @@ using AttributeName = std::string; using AttributeMap = std::map<AttributeName, Attributes>; using PropertyName = std::string; using PropertyMap = std::map<PropertyName, AttributeMap>; -using LogEntryMsg = std::pair<sdbusplus::message::object_path, PropertyMap>; Watch::Watch(sdbusplus::bus::bus& bus, IMgr& iMgr): iMgr(iMgr), @@ -65,10 +64,11 @@ void Watch::addCallback(sdbusplus::message::message& msg) using QuotaExceeded = sdbusplus::xyz::openbmc_project::Dump::Create::Error::QuotaExceeded; - LogEntryMsg logEntry; + sdbusplus::message::object_path objectPath; + PropertyMap propertyMap; try { - msg.read(logEntry); + msg.read(objectPath, propertyMap); } catch (const sdbusplus::exception::SdBusError& e) { @@ -78,9 +78,7 @@ void Watch::addCallback(sdbusplus::message::message& msg) return; } - std::string objectPath(std::move(logEntry.first)); - - std::size_t found = objectPath.find("entry"); + std::size_t found = objectPath.str.find("entry"); if (found == std::string::npos) { //Not a new error entry skip @@ -96,8 +94,8 @@ void Watch::addCallback(sdbusplus::message::message& msg) return; } - auto iter = logEntry.second.find("xyz.openbmc_project.Logging.Entry"); - if (iter == logEntry.second.end()) + auto iter = propertyMap.find("xyz.openbmc_project.Logging.Entry"); + if (iter == propertyMap.end()) { return; } @@ -145,10 +143,10 @@ void Watch::addCallback(sdbusplus::message::message& msg) void Watch::delCallback(sdbusplus::message::message& msg) { - sdbusplus::message::object_path logEntry; + sdbusplus::message::object_path objectPath; try { - msg.read(logEntry); + msg.read(objectPath); } catch (const sdbusplus::exception::SdBusError& e) { @@ -158,9 +156,6 @@ void Watch::delCallback(sdbusplus::message::message& msg) return; } - //Get elog entry message string. - std::string objectPath(logEntry); - //Get elog id auto eId = getEid(objectPath); |