DBusConnection


Object Hierarchy:

Object hierarchy for DBusConnection

Description:

public class DBusConnection : Object, AsyncInitable, Initable, AsyncInitable, Initable

The DBusConnection type is used for D-Bus connections to remote peers such as a message buses.

It is a low-level API that offers a lot of flexibility. For instance, it lets you establish a connection over any transport that can by represented as an IOStream.

This class is rarely used directly in D-Bus clients. If you are writing a D-Bus client, it is often easier to use the g_bus_own_name, g_bus_watch_name or create_for_bus APIs.

As an exception to the usual GLib rule that a particular object must not be used by two threads at the same time, DBusConnection's methods may be called from any thread. This is so that @get and get_sync can safely return the same DBusConnection when called from any thread.

Most of the ways to obtain a DBusConnection automatically initialize it (i.e. connect to D-Bus): for instance, @new and @get, and the synchronous versions of those methods, give you an initialized connection. Language bindings for GIO should use @new or new_async, which also initialize the connection.

If you construct an uninitialized DBusConnection, such as via @new, you must initialize it via init or init_async before using its methods or properties. Calling methods or accessing properties on a DBusConnection that has not completed initialization successfully is considered to be invalid, and leads to undefined behaviour. In particular, if initialization fails with a Error, the only valid thing you can do with that DBusConnection is to free it with unref.

An example D-Bus server # {gdbuss-server}

Here is an example for a D-Bus server: gdbus-example-server.c

An example for exporting a subtree # {gdbuss-subtree-server}

Here is an example for exporting a subtree: gdbus-example-subtree.c

An example for file descriptor passing # {gdbuss-unix-fd-client}

Here is an example for passing UNIX file descriptors: gdbus-unix-fd-client.c

An example for exporting a GObject # {gdbuss-export}

Here is an example for exporting a Object: gdbus-example-export.c


Namespace: GLib
Package: gio-2.0

Content:

Properties:

Static methods:

Creation methods:

Methods:

Inherited Members:

All known members inherited from interface GLib.AsyncInitable
 
All known members inherited from interface GLib.Initable