gdbus: Use symbolic constants for interfaces from dbus-specification

Most D-Bus interfaces are domain-specific, but these interfaces from the
D-Bus Specification are intended to be commonly used in any context for
which they are found to be appropriate.

Most of these use `gdbusprivate.h`. One exception is that
`gio/tests/gdbus-example-*` redefine the constants locally: due to these
files' dual role as part of the unit tests and as sample code, it seems
desirable to ensure that they can still be compiled outside GLib.

Signed-off-by: Simon McVittie <smcv@collabora.com>
This commit is contained in:
Simon McVittie
2024-05-13 13:00:34 +01:00
committed by Philip Withnall
parent b4f8d4a5d5
commit 7c609f8142
18 changed files with 95 additions and 75 deletions

View File

@@ -1,6 +1,8 @@
#include <gio/gio.h>
#include <stdlib.h>
#include "gdbusprivate.h"
static GDBusNodeInfo *introspection_data = NULL;
static GMainLoop *loop = NULL;
static GHashTable *properties = NULL;
@@ -688,7 +690,7 @@ handle_method_call (GDBusConnection *connection,
g_dbus_connection_emit_signal (connection,
NULL,
"/com/example/TestObject",
"org.freedesktop.DBus.Properties",
DBUS_INTERFACE_PROPERTIES,
"PropertiesChanged",
g_variant_new_parsed ("('com.example.Frob', [{%s, %v}], @as [])", name, value),
NULL);
@@ -703,7 +705,7 @@ handle_method_call (GDBusConnection *connection,
g_dbus_connection_emit_signal (connection,
NULL,
"/com/example/TestObject",
"org.freedesktop.DBus.Properties",
DBUS_INTERFACE_PROPERTIES,
"PropertiesChanged",
g_variant_new_parsed ("('com.example.Frob', @a{sv} [], ['PropertyThatWillBeInvalidated'])"),
NULL);