#include "theme/utils/logging.h"
#define THEME_MANAGER_DBUS_NAME "org.tizen.theme_manager"
-#define THEME_MANAGER_OBJECT_PATH "/org/tizen/theme_manager"
#define THEME_MANAGER_INTERFACE_NAME "org.tizen.theme_manager"
+#define THEME_MANAGER_OBJECT_PATH "/org/tizen/theme_manager"
namespace ttm {
return 0;
}
+bool RequestBroker::EmitSignal(std::string signal_name,
+ Command cmd, tizen_base::Bundle data) {
+ GError* err = nullptr;
+ gboolean result = TRUE;
+ GVariant *serialized = nullptr;
+
+ serialized = g_variant_new("(is)", static_cast<int>(cmd),
+ reinterpret_cast<char*>(data.ToRaw().first.get()));
+
+ result = g_dbus_connection_emit_signal(connection_,
+ nullptr,
+ THEME_MANAGER_OBJECT_PATH,
+ THEME_MANAGER_INTERFACE_NAME,
+ signal_name.c_str(), serialized, &err);
+ if (result == FALSE) {
+ LOG(ERROR) << "g_dbus_connection_emit_signal() is failed";
+ if (err != nullptr) {
+ LOG(ERROR) << "g_dbus_connection_emit_signal() err : " << err->message;
+ g_error_free(err);
+ }
+ } else {
+ LOG(INFO) << "Successfully emit signal";
+ }
+ return result;
+}
+
bool RequestBroker::Listen() {
const GDBusInterfaceVTable interface_vtable = {
OnReceiveDbusMethod,
GDBusConnection* GetConnection();
int RegisterRequestFilter(RequestFilter filter);
+ bool EmitSignal(std::string signal_name,
+ Command cmd, tizen_base::Bundle data);
bool Listen();
bool Subscribe();
tizen_base::Bundle SendData(Command cmd, tizen_base::Bundle&);