Gio.DBusObject
Description: Reference for Gio.DBusObject

### Interface

# GioDBusObject

since: 2.0

#### Description

    interface Gio.DBusObject : GObject.Object

The `GDBusObject` type is the base type for D-Bus objects on both the service side (see `GDBusObjectSkeleton`) and the client side (see `GDBusObjectProxy`). It is essentially just a container of interfaces.

Available since: 2.0

#### Prerequisite

In order to implement DBusObject, your type must inherit from`GObject`.

#### Implementations

- GDBusObjectProxy
- GDBusObjectSkeleton

#### Instance methods

###### g_dbus_object_get_interface

Gets the D-Bus interface with name `interface_name` associated with `object`, if any.

since: 2.30

###### g_dbus_object_get_interfaces

Gets the D-Bus interfaces associated with `object`.

since: 2.30

###### g_dbus_object_get_object_path

Gets the object path for `object`.

since: 2.30

#### Signals

###### Gio.DBusObject::interface-added

Emitted when `interface` is added to `object`.

since: 2.30

###### Gio.DBusObject::interface-removed

Emitted when `interface` is removed from `object`.

since: 2.30

#### Interface structure

    struct GioDBusObjectIface {
      GTypeInterface parent_iface;
      const gchar* (* get_object_path) (
        GDBusObject* object
      );
      GList* (* get_interfaces) (
        GDBusObject* object
      );
      GDBusInterface* (* get_interface) (
        GDBusObject* object,
        const gchar* interface_name
      );
      void (* interface_added) (
        GDBusObject* object,
        GDBusInterface* interface_
      );
      void (* interface_removed) (
        GDBusObject* object,
        GDBusInterface* interface_
      );

    }

Base object type for D-Bus objects.

###### Interface members

`parent_iface` |
    GTypeInterface
| The parent interface.
`get_object_path` |
    const gchar* (* get_object_path) (
        GDBusObject* object
      )
| Returns the object path. See g_dbus_object_get_object_path().
`get_interfaces` |
    GList* (* get_interfaces) (
        GDBusObject* object
      )
| Returns all interfaces. See g_dbus_object_get_interfaces().
`get_interface` |
    GDBusInterface* (* get_interface) (
        GDBusObject* object,
        const gchar* interface_name
      )
| Returns an interface by name. See g_dbus_object_get_interface().
`interface_added` |
    void (* interface_added) (
        GDBusObject* object,
        GDBusInterface* interface_
      )
| Signal handler for the `GDBusObject::interface-added` signal.
`interface_removed` |
    void (* interface_removed) (
        GDBusObject* object,
        GDBusInterface* interface_
      )
| Signal handler for the `GDBusObject::interface-removed` signal.

#### Virtual methods

###### Gio.DBusObject.get_interface

Gets the D-Bus interface with name `interface_name` associated with `object`, if any.

since: 2.30

###### Gio.DBusObject.get_interfaces

Gets the D-Bus interfaces associated with `object`.

since: 2.30

###### Gio.DBusObject.get_object_path

Gets the object path for `object`.

since: 2.30

###### Gio.DBusObject.interface_added

Signal handler for the `GDBusObject::interface-added` signal.

since: 2.0

###### Gio.DBusObject.interface_removed

Signal handler for the `GDBusObject::interface-removed` signal.

since: 2.0