org.freedesktop.DBus 的12个Methods简要说明

org.freedesktop.DBus.RequestName (in STRING name, in UINT32 flags, out UINT32 reply)

请求公众名。其中flag定义如下:
DBUS_NAME_FLAG_ALLOW_REPLACEMENT 1
DBUS_NAME_FLAG_REPLACE_EXISTING 2
DBUS_NAME_FLAG_DO_NOT_QUEUE 4

返回值reply定义如下:
DBUS_REQUEST_NAME_REPLY_PRIMARY_OWNER 1
DBUS_REQUEST_NAME_REPLY_IN_QUEUE 2
DBUS_REQUEST_NAME_REPLY_EXISTS 3
DBUS_REQUEST_NAME_REPLY_ALREADY_OWNER 4

org.freedesktop.DBus.ReleaseName (in STRING name, out UINT32 reply)

释放公众名。返回值reply定义如下:
DBUS_RELEASE_NAME_REPLY_RELEASED 1
DBUS_RELEASE_NAME_REPLY_NON_EXISTENT 2
DBUS_RELEASE_NAME_REPLY_NOT_OWNER 3

org.freedesktop.DBus.Hello (out STRING unique_name)

一个应用在通过消息总线向其它应用发消息前必须先调用Hello获取自己这个连接的唯一名。返回值就是连接的唯一名。dbus没有定义专门的切断连接命令,关闭socket就是切断连接。
1.2节的dbus-monitor输出中可以看到dbus-send调用消息总线的Hello方法。

org.freedesktop.DBus.ListNames (out ARRAY of STRING bus_names)

返回消息总线上已连接的所有连接名,包括所有公共名和唯一名。例如连接“org.fmddlmyy.Test”同时有公共名“org.fmddlmyy.Test”和唯一名“:1.21”,这两个名称都会被返回。

org.freedesktop.DBus.ListActivatableNames (out ARRAY of STRING bus_names)

返回所有可以启动的服务名。dbus支持按需启动服务,即根据应用程序的请求启动服务。

org.freedesktop.DBus.NameHasOwner (in STRING name, out BOOLEAN has_owner)

检查是否有连接拥有指定名称。

org.freedesktop.DBus.StartServiceByName (in STRING name, in UINT32 flags, out UINT32 ret_val)

按名称启动服务。参数flags暂未使用。返回值ret_val定义如下:
1
服务被成功启动
2
已经有连接拥有要启动的服务名

org.freedesktop.DBus.GetNameOwner (in STRING name, out STRING unique_connection_name)

返回拥有指定公众名的连接的唯一名。

org.freedesktop.DBus.GetConnectionUnixUser (in STRING connection_name, out UINT32 unix_user_id)

返回指定连接对应的服务器进程的Unix用户id

org.freedesktop.DBus.AddMatch (in STRING rule)

为当前连接增加匹配规则。

org.freedesktop.DBus.RemoveMatch (in STRING rule)

为当前连接去掉指定匹配规则。

org.freedesktop.DBus.GetId (out STRING id)

返回消息总线的ID。这个ID在消息总线的生命期内是唯一的。

你可能感兴趣的:(String,socket,unix,服务器,user,methods)