diff options
| author | Patrick Venture <venture@google.com> | 2018-04-16 13:45:03 -0700 |
|---|---|---|
| committer | Brad Bishop <bradleyb@fuzziesquirrel.com> | 2018-05-30 13:38:35 +0000 |
| commit | a489b94b14fd3e307db4278bef5a0377d92cae10 (patch) | |
| tree | 968162aff18c040bb7b21678bac96c1998d9f0a5 | |
| parent | 540946ec90f56df7a837b62e5fdb1c3500c4fac4 (diff) | |
| download | sdbusplus-a489b94b14fd3e307db4278bef5a0377d92cae10.tar.gz sdbusplus-a489b94b14fd3e307db4278bef5a0377d92cae10.zip | |
sdbusplus::server::object Add sdbus interface
This object which is part of the composed object for the
phosphor-dbus-interfaces, now supports testing through the
interface as exposed from the sdbusplus::bus::bus object.
Change-Id: I70061e3d1f1ffa027800a2d3e70407a5038f3e07
Signed-off-by: Patrick Venture <venture@google.com>
| -rw-r--r-- | sdbusplus/server/object.hpp | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/sdbusplus/server/object.hpp b/sdbusplus/server/object.hpp index 0f27e3b..499f4e8 100644 --- a/sdbusplus/server/object.hpp +++ b/sdbusplus/server/object.hpp @@ -1,5 +1,7 @@ #pragma once + #include <sdbusplus/bus.hpp> +#include <sdbusplus/sdbus.hpp> namespace sdbusplus { @@ -91,9 +93,10 @@ template <class... Args> struct object : details::compose<Args...> */ object(bus::bus& bus, const char* path, bool deferSignal = false) : details::compose<Args...>(bus, path), - __sdbusplus_server_object_bus(bus.get()), + __sdbusplus_server_object_bus(bus.get(), bus.getInterface()), __sdbusplus_server_object_path(path), - __sdbusplus_server_object_emitremoved(false) + __sdbusplus_server_object_emitremoved(false), + __sdbusplus_server_object_intf(bus.getInterface()) { if (!deferSignal) { @@ -105,8 +108,9 @@ template <class... Args> struct object : details::compose<Args...> { if (__sdbusplus_server_object_emitremoved) { - sd_bus_emit_object_removed(__sdbusplus_server_object_bus.get(), - __sdbusplus_server_object_path.c_str()); + __sdbusplus_server_object_intf->sd_bus_emit_object_removed( + __sdbusplus_server_object_bus.get(), + __sdbusplus_server_object_path.c_str()); } } @@ -115,8 +119,9 @@ template <class... Args> struct object : details::compose<Args...> { if (!__sdbusplus_server_object_emitremoved) { - sd_bus_emit_object_added(__sdbusplus_server_object_bus.get(), - __sdbusplus_server_object_path.c_str()); + __sdbusplus_server_object_intf->sd_bus_emit_object_added( + __sdbusplus_server_object_bus.get(), + __sdbusplus_server_object_path.c_str()); __sdbusplus_server_object_emitremoved = true; } } @@ -129,6 +134,7 @@ template <class... Args> struct object : details::compose<Args...> bus::bus __sdbusplus_server_object_bus; std::string __sdbusplus_server_object_path; bool __sdbusplus_server_object_emitremoved; + SdBusInterface* __sdbusplus_server_object_intf; }; } // namespace object |

