Basics
Guides
API Reference
Basics
Guides
API Reference
[309:7] extends: object
Generated low-level callback wrapper for GIR callback
interface-proxy-signal.
DBusObjectManagerClientInterfaceproxysignalCallback (callback Fn, UserData = null)
Creates one native callback wrapper. The wrapper owns a trampoline that converts native pointers into generated wrapper objects before invoking
Fn.
Fn is the Aussom callback implementation.UserData is retained and passed through to Fn on each invocation when provided.trampoline (nativeSelf, object_proxy, interface_proxy, sender_name, signal_name, parameters, nativeUserData)
Internal trampoline. Converts native pointer arguments into generated wrapper instances, then invokes the user's callback.
callback ()
Returns the wrapped NativeCallback.
handle ()
Returns the callback as a NativeHandle.
close ()
Closes the underlying NativeCallback.
isClosed ()
Returns true when the callback has been closed.
[289:14] static extends: object
Alternate constructors for DBusObjectManagerClient. Usage:
DBusObjectManagerClientCtors.<name>(...). The primary constructor lives
directly on DBusObjectManagerClient.
newForBusFinish (object res)
Finishes an operation started with g_dbus_object_manager_client_new_for_bus().
res is A #GAsyncResult obtained from the #GAsyncReadyCallback passed to g_dbus_object_manager_client_new_for_bus()..A new DBusObjectManagerClient.[76:7] extends: object
GDBusObjectManagerClient is used to create, monitor and delete object
proxies for remote objects exported by a [class@Gio.DBusObjectManagerServer]
(or any code implementing the
org.freedesktop.DBus.ObjectManager
interface). Once an instance of this type has been created, you can connect
to the [signal@Gio.DBusObjectManager::object-added] and
[signal@Gio.DBusObjectManager::object-removed signals] and inspect the
[class@Gio.DBusObjectProxy] objects returned by
[method@Gio.DBusObjectManager.get_objects]. If the name for a
GDBusObjectManagerClient is not owned by anyone at object construction
time, the default behavior is to request the message bus to launch an owner
for the name. This behavior can be disabled using the
G_DBUS_OBJECT_MANAGER_CLIENT_FLAGS_DO_NOT_AUTO_START flag. It’s also worth
noting that this only works if the name of interest is activatable in the
first place. E.g. in some cases it is not possible to launch an owner for the
requested name. In this case, GDBusObjectManagerClient object construction
still succeeds but there will be no object proxies (e.g.
[method@Gio.DBusObjectManager.get_objects] returns the empty list) and the
[property@Gio.DBusObjectManagerClient:name-owner] property is NULL. The
owner of the requested name can come and go (for example consider a system
service being restarted) – GDBusObjectManagerClient handles this case too;
simply connect to the [signal@GObject.Object::notify] signal to watch for
changes on the [property@Gio.DBusObjectManagerClient:name-owner] property.
When the name owner vanishes, the behavior is that
[property@Gio.DBusObjectManagerClient:name-owner] is set to NULL (this
includes emission of the [signal@GObject.Object::notify] signal) and then
[signal@Gio.DBusObjectManager::object-removed] signals are synthesized for
all currently existing object proxies. Since
[property@Gio.DBusObjectManagerClient:name-owner] is NULL when this
happens, you can use this information to disambiguate a synthesized signal
from a genuine signal caused by object removal on the remote
[iface@Gio.DBusObjectManager]. Similarly, when a new name owner appears,
[signal@Gio.DBusObjectManager::object-added] signals are synthesized while
[property@Gio.DBusObjectManagerClient:name-owner] is still NULL. Only when
all object proxies have been added, the
[property@Gio.DBusObjectManagerClient:name-owner] is set to the new name
owner (this includes emission of the [signal@GObject.Object::notify] signal).
Furthermore, you are guaranteed that
[property@Gio.DBusObjectManagerClient:name-owner] will alternate between a
name owner (e.g. :1.42) and NULL even in the case where the name of
interest is atomically replaced Ultimately, GDBusObjectManagerClient is
used to obtain [class@Gio.DBusProxy] instances. All signals (including the
org.freedesktop.DBus.Properties::PropertiesChanged signal) delivered to
[class@Gio.DBusProxy] instances are guaranteed to originate from the name
owner. This guarantee along with the behavior described above, means that
certain race conditions including the “half the proxy is from the old owner
and the other half is from the new owner” problem cannot happen. To avoid
having the application connect to signals on the returned
[class@Gio.DBusObjectProxy] and [class@Gio.DBusProxy] objects, the
[signal@Gio.DBusObject::interface-added],
[signal@Gio.DBusObject::interface-removed],
[signal@Gio.DBusProxy::g-properties-changed] and
[signal@Gio.DBusProxy::g-signal] signals are also emitted on the
GDBusObjectManagerClient instance managing these objects. The signals
emitted are [signal@Gio.DBusObjectManager::interface-added],
[signal@Gio.DBusObjectManager::interface-removed],
[signal@Gio.DBusObjectManagerClient::interface-proxy-properties-changed] and
[signal@Gio.DBusObjectManagerClient::interface-proxy-signal]. Note that all
callbacks and signals are emitted in the thread-default main context (see
[method@GLib.MainContext.push_thread_default]) that the
GDBusObjectManagerClient object was constructed in. Additionally, the
[class@Gio.DBusObjectProxy] and [class@Gio.DBusProxy] objects originating
from the GDBusObjectManagerClient object will be created in the same
context and, consequently, will deliver signals in the same main loop.
DBusObjectManagerClient (res = null)
Finishes an operation started with g_dbus_object_manager_client_new().
res is A #GAsyncResult obtained from the #GAsyncReadyCallback passed to g_dbus_object_manager_client_new()..toNativeHandle (Source)
Normalizes a constructor argument into a raw pointer carrier. Accepts a raw NativeHandle, a raw NativeBuffer returned from
fn.call(...), another generated wrapper exposinghandle(), or null. Returns null when the argument carries no pointer.
Source is the raw handle, raw buffer, wrapper, or null.A raw pointer carrier or null when no pointer is present.getLib ()
Returns the opened native library for this generated wrapper.
The opened native library.handle ()
Returns the wrapped NativeHandle.
The wrapped NativeHandle.isNull ()
Returns true when the wrapped handle is null.
A bool.describe ()
Returns a small string for debugging generated wrappers.
A string.asObject ()
Wraps this handle as
Object.
A Object object.asAsyncInitable ()
Wraps this handle as
AsyncInitable.
A AsyncInitable object.asDBusObjectManager ()
Wraps this handle as
DBusObjectManager.
A DBusObjectManager object.asInitable ()
Wraps this handle as
Initable.
A Initable object.connectSignal (string Name, CallbackObj)
Connects one generated callback wrapper to a named signal.
Name is the signal name.CallbackObj is the generated callback wrapper to connect.The connected handler id.disconnectSignalHandler (int HandlerId)
Disconnects one retained signal handler id.
HandlerId is the signal handler id to disconnect.None.setOnInterfaceproxysignal (callback Fn, UserData = null)
Emitted when a D-Bus signal is received on @interface_proxy. This signal exists purely as a convenience to avoid having to connect signals to all interface proxies managed by @manager. This signal is emitted in the thread-default main context (see [method@GLib.MainContext.push_thread_default]) that @manager was constructed in.
Fn is the Aussom callback.Fn is called with (DBusObjectManagerClient Self, DBusObjectProxy Object_proxy, DBusProxy Interface_proxy, string Sender_name, string Signal_name, Variant Parameters).UserData is retained and passed through to the generated callback wrapper when provided.The connected handler id.get_connection ()
Gets the #GDBusConnection used by @manager.
get_flags ()
Gets the flags that @manager was constructed with.
get_name ()
Gets the name that @manager is for, or %NULL if not a message bus connection.
get_name_owner ()
The unique name that owns the name that @manager is for or %NULL if no-one currently owns that name. You can connect to the #GObject::notify signal to track changes to the #GDBusObjectManagerClient:name-owner property.
[382:14] static extends: object
Generated metadata helpers for DBusObjectManagerClient class surfaces.
properties ()
Returns property metadata for
DBusObjectManagerClient.
A list.signals ()
Returns signal metadata for
DBusObjectManagerClient.
A list.
Aussom
Write once. Embed everywhere.
Copyright 2026 Austin Lehman. All rights reserved.