diff options
author | Huang Peng <shawn.p.huang@gmail.com> | 2008-09-21 13:27:13 +0800 |
---|---|---|
committer | Huang Peng <shawn.p.huang@gmail.com> | 2008-09-21 13:27:13 +0800 |
commit | 53b7c849475d589d31500953ef4544945c824add (patch) | |
tree | c88d39452f6e4bd947601d766a78ef987df5d514 | |
parent | 6789a1f6f8bb59037206f46cbeed1a5bc552b1ea (diff) | |
download | ibus-53b7c849475d589d31500953ef4544945c824add.tar.gz ibus-53b7c849475d589d31500953ef4544945c824add.tar.xz ibus-53b7c849475d589d31500953ef4544945c824add.zip |
Implement org.freedesktop.DBus methods.
-rw-r--r-- | daemon/ibusdaemon.py | 47 | ||||
-rw-r--r-- | doc/specification | 5 |
2 files changed, 46 insertions, 6 deletions
diff --git a/daemon/ibusdaemon.py b/daemon/ibusdaemon.py index a6ca372..35e854f 100644 --- a/daemon/ibusdaemon.py +++ b/daemon/ibusdaemon.py @@ -41,11 +41,33 @@ class DBus(dbus.service.Object): signal = lambda **args: \ dbus.service.signal(dbus_interface = dbus.BUS_DAEMON_IFACE, \ **args) + __id = 0 def __init__(self, *args, **kargs): super(DBus, self).__init__(*args, **kargs) - @method(in_signature = "s", out_signature = "s") + @method(out_signature="s") + def Hello(self): + DBus.__id += 1 + return "%d" % DBus.__id + + @method(out_signature="as") + def ListNames(self): + return [] + + @method(out_signature="as") + def ListActivatableNames(self): + return [] + + @method(in_signature="s", out_signature="as") + def NameHasOwner(self, name): + return [] + + @method(in_signature="si", out_signature="i") + def StartServiceByName(self, name, flags): + pass + + @method(in_signature="s", out_signature="s") def GetNameOwner(self, name): if name == dbus.BUS_DAEMON_NAME: return dbus.BUS_DAEMON_NAME @@ -54,15 +76,34 @@ class DBus(dbus.service.Object): raise dbus.DBusException( "org.freedesktop.DBus.Error.NameHasNoOwner: Could not get owner of name '%s': no such name" % name) + @method(in_signature="s", out_signature="i") + def GetConnectionUnixUser(self, connection_name): + pass - @method(in_signature = "s") + @method(in_signature="s") def AddMatch(self, rule): pass - @signal(signature = "sss") + @method(in_signature="s") + def RemoveMatch(self, rule): + pass + + @method(out_signature="s") + def GetId(self): + pass + + @signal(signature="sss") def NameOwnerChanged(self, name, old_owner, new_owner): pass + @signal(signature="s") + def NameLost(self, name): + pass + + @signal(signature="s") + def NameAcquired(self, name): + pass + class IBusServer(dbus.server.Server): def __init__(self, *args, **kargs): super(IBusServer, self).__init__() diff --git a/doc/specification b/doc/specification index 813266b..04e7703 100644 --- a/doc/specification +++ b/doc/specification @@ -1,9 +1,8 @@ IM Specification - - Huang Peng <shawn.p.huang@gmail.com> +Huang Peng <shawn.p.huang@gmail.com> 1. Introducation - About + About Architecture |