summaryrefslogtreecommitdiffstats
path: root/elog_entry.hpp
diff options
context:
space:
mode:
authorAdriana Kobylak <anoo@us.ibm.com>2017-01-24 12:30:15 -0600
committerAdriana Kobylak <anoo@us.ibm.com>2017-01-30 12:57:25 -0600
commit88d7cf8da4a7213e4f91d3eca35ec6a2fd8f9ca0 (patch)
tree9d3a907abd251debf41c1af553c69badb67e34b5 /elog_entry.hpp
parent7298dc2320ff8b18b16acfb66a06c328c786dd87 (diff)
downloadphosphor-logging-88d7cf8da4a7213e4f91d3eca35ec6a2fd8f9ca0.tar.gz
phosphor-logging-88d7cf8da4a7213e4f91d3eca35ec6a2fd8f9ca0.zip
logging: Create Entry dbus interface
Implement the generated code to create an error/event entry dbus object. Change-Id: I881636fe3e8de680d9a15fff1fe933d5e22eed06 Signed-off-by: Adriana Kobylak <anoo@us.ibm.com>
Diffstat (limited to 'elog_entry.hpp')
-rw-r--r--elog_entry.hpp46
1 files changed, 46 insertions, 0 deletions
diff --git a/elog_entry.hpp b/elog_entry.hpp
new file mode 100644
index 0000000..6c0e52e
--- /dev/null
+++ b/elog_entry.hpp
@@ -0,0 +1,46 @@
+#pragma once
+
+#include <sdbusplus/bus.hpp>
+#include <sdbusplus/server/object.hpp>
+#include "xyz/openbmc_project/Logging/Entry/server.hpp"
+
+namespace phosphor
+{
+namespace logging
+{
+namespace details
+{
+
+template <typename T>
+using ServerObject = typename sdbusplus::server::object::object<T>;
+
+using EntryIface =
+ sdbusplus::xyz::openbmc_project::Logging::server::Entry;
+
+} // namespace details
+
+/** @class Entry
+ * @brief OpenBMC logging entry implementation.
+ * @details A concrete implementation for the
+ * xyz.openbmc_project.Logging.Entry DBus API.
+ */
+class Entry final :
+ public details::ServerObject<details::EntryIface>
+{
+ public:
+ Entry() = delete;
+ Entry(const Entry&) = delete;
+ Entry& operator=(const Entry&) = delete;
+ Entry(Entry&&) = delete;
+ Entry& operator=(Entry&&) = delete;
+ virtual ~Entry() = default;
+
+ /** @brief Constructor for the Log Entry object
+ * @param[in] bus - DBus bus to attach to.
+ * @param[in] obj - Object path to attach to.
+ */
+ Entry(sdbusplus::bus::bus& bus, const char* obj);
+};
+
+} // namespace logging
+} // namespace phosphor
OpenPOWER on IntegriCloud