类
GioDBusObjectManagerServer
自:2.30 起
说明 [src]
class Gio.DBusObjectManagerServer : GObject.Object
implements Gio.DBusObjectManager {
/* No available fields */
}
GDBusObjectManagerServer
用于使用标准化 org.freedesktop.DBus.ObjectManager
接口导出 GDBusObject
实例。例如,远程 D-Bus 客户端可以在一个调用中获取所有对象和属性。此外,使用信号广播对象层次结构中的任何更改。这意味着 D-Bus 客户端可以通过只监听 D-Bus 信号将缓存保持为最新。
推荐导出对象管理器的路径是 D-Bus 服务的知名名称路径形式或其下方。例如,如果 D-Bus 服务在知名名称 net.example.ExampleService1
中可用,则对象管理器通常应导出到 /net/example/ExampleService1
或其下方(以允许在服务中使用多个对象管理器)。
导出对象管理器到根路径 /
受支持,但不推荐。
参阅 GDBusObjectManagerClient
,了解旨在与 GDBusObjectManagerServer
或实现 org.freedesktop.DBus.ObjectManager
接口的任何 D-Bus 对象配合使用的客户端代码。
自 2.30 起提供:
实例方法
g_dbus_object_manager_server_export_uniquely
类似 g_dbus_object_manager_server_export()
,但如果给定路径的对象已存在,则会将形式为 _N(其中 N 为自然数)的字符串追加到 object
的对象路径。因此,object
的 GDBusObjectProxy:g-object-path
属性可能被修改。
自:2.30 起
g_dbus_object_manager_server_set_connection
在 connection
上导出 manager
管理的所有对象。如果 connection
为 NULL
,则停止导出对象。
从 GDBusObjectManager 继承的方法 (4)
g_dbus_object_manager_get_interface
如果存在,则在 `object_path` 中获取 `interface_name` 的界面代理。
自:2.30 起
g_dbus_object_manager_get_object
如果存在,则获取 `object_path` 中的 `GDBusObject`。
自:2.30 起
g_dbus_object_manager_get_object_path
获取代表 `manager` 的对象路径。
自:2.30 起
g_dbus_object_manager_get_objects
获取 `manager` 已知的全部 `GDBusObject` 对象。
自:2.30 起
信号
从 GObject 继承的信号 (1)
GObject::notify
当某个对象的某个属性通过 g_object_set_property()、g_object_set() 等设定其值时,便会发出通知信号。
从 GDBusObjectManager 继承的信号 (4)
GDBusObjectManager::interface-added
当 `interface` 被添加至 `object` 时发出。
自:2.30 起
GDBusObjectManager::interface-removed
当 `interface` 已从 `object` 中移除时发出。
自:2.30 起
GDBusObjectManager::object-added
当 `object` 添加到 `manager` 时发出。
自:2.30 起
GDBusObjectManager::object-removed
当 `object` 从 `manager` 中移除时发出。
自:2.30 起