---
 src/emulator.c |   33 +++++++++++++++++++++++++++++++++
 1 files changed, 33 insertions(+), 0 deletions(-)

diff --git a/src/emulator.c b/src/emulator.c
index bed0f46..f1cb9ef 100644
--- a/src/emulator.c
+++ b/src/emulator.c
@@ -212,7 +212,40 @@ static DBusMessage *emulator_destroy(DBusConnection *conn,
        return reply;
 }
 
+static DBusMessage *emulator_get_properties(DBusConnection *conn,
+                                               DBusMessage *msg, void *data)
+{
+       struct emulator *e = data;
+       DBusMessage *reply;
+       DBusMessageIter iter;
+       DBusMessageIter dict;
+       const char *type, *path;
+
+       reply = dbus_message_new_method_return(msg);
+       if (!reply)
+               return NULL;
+
+       dbus_message_iter_init_append(reply, &iter);
+
+       dbus_message_iter_open_container(&iter, DBUS_TYPE_ARRAY,
+                                       OFONO_PROPERTIES_ARRAY_SIGNATURE,
+                                       &dict);
+
+       type = emulator_type_to_str(e->type);
+
+       ofono_dbus_dict_append(&dict, "TYPE", DBUS_TYPE_STRING, &type);
+
+       path = emulator_build_path(e->oe, e);
+
+       ofono_dbus_dict_append(&dict, "PATH", DBUS_TYPE_STRING, &path);
+
+       dbus_message_iter_close_container(&iter, &dict);
+
+       return reply;
+}
+
 static GDBusMethodTable emulator_methods[] = {
+       { "GetProperties",      "",     "a{sv}",        emulator_get_properties 
},
        { "Destroy",            "",     "",             emulator_destroy },
        { }
 };
-- 
1.6.3.3

_______________________________________________
ofono mailing list
[email protected]
http://lists.ofono.org/listinfo/ofono

Reply via email to