diff options
author | Lucas De Marchi <lucas.demarchi@profusion.mobi> | 2012-10-04 04:26:31 -0300 |
---|---|---|
committer | Johan Hedberg <johan.hedberg@intel.com> | 2012-10-04 17:09:26 +0300 |
commit | 21de7d71fbcfeff699eef6e6d630456b54830fd2 (patch) | |
tree | 5b93f93a386aad2957c9ee70ad7a475b5f075bf2 | |
parent | 913a901526aee4d740a134efc72d819a494d9ada (diff) | |
download | bluez-21de7d71fbcfeff699eef6e6d630456b54830fd2.tar.gz |
gdbus: Add properties into Introspectable interface
-rw-r--r-- | gdbus/object.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/gdbus/object.c b/gdbus/object.c index 7378523a5..662ebe3b6 100644 --- a/gdbus/object.c +++ b/gdbus/object.c @@ -95,6 +95,7 @@ static void generate_interface_xml(GString *gstr, struct interface_data *iface) { const GDBusMethodTable *method; const GDBusSignalTable *signal; + const GDBusPropertyTable *property; for (method = iface->methods; method && method->name; method++) { gboolean deprecated = method->flags & @@ -147,6 +148,24 @@ static void generate_interface_xml(GString *gstr, struct interface_data *iface) g_string_append_printf(gstr, "\t\t</signal>\n"); } } + + for (property = iface->properties; property && property->name; + property++) { + gboolean deprecated = property->flags & + G_DBUS_PROPERTY_FLAG_DEPRECATED; + + g_string_append_printf(gstr, "\t\t<property name=\"%s\"" + " type=\"%s\" access=\"%s%s\"", + property->name, property->type, + property->get ? "read" : "", + property->set ? "write" : ""); + + if (!deprecated) + g_string_append_printf(gstr, "/>\n"); + else + g_string_append_printf(gstr, + G_DBUS_ANNOTATE_DEPRECATED(">\n\t\t\t")); + } } static void generate_introspection_xml(DBusConnection *conn, |