summaryrefslogtreecommitdiff
path: root/python
diff options
context:
space:
mode:
authorJohn (J5) Palmieri <johnp@redhat.com>2004-12-27 16:01:13 +0000
committerJohn (J5) Palmieri <johnp@redhat.com>2004-12-27 16:01:13 +0000
commita11bbc91a794052eeb0a88aa207b01c871677cf4 (patch)
tree93c26e14063697be0c6426bb3fd79cb5703c9312 /python
parentb8a309ac940374ead27618508ab8f81665ff7d9d (diff)
downloaddbus-a11bbc91a794052eeb0a88aa207b01c871677cf4.tar.gz
2004-12-26 John (J5) Palmieri <johnp@redhat.com>
* python/dbus_bindings.pyx.in (bus_activate_service): Bind dbus_bus_activate_service * python/dbus.py (Bus.activate_service): activate a service on the bus.
Diffstat (limited to 'python')
-rw-r--r--python/dbus.py7
-rw-r--r--python/dbus_bindings.pyx.in16
2 files changed, 23 insertions, 0 deletions
diff --git a/python/dbus.py b/python/dbus.py
index c8ac561a..6d38667d 100644
--- a/python/dbus.py
+++ b/python/dbus.py
@@ -62,6 +62,10 @@ class Bus:
"""bus_type=[Bus.TYPE_SESSION | Bus.TYPE_SYSTEM | Bus.TYPE_ACTIVATION]
"""
+
+ ACTIVATION_REPLY_ACTIVE = dbus_bindings.ACTIVATION_REPLY_ACTIVE
+ ACTIVATION_REPLY_ALREADY_ACTIVE = dbus_bindings.ACTIVATION_REPLY_ALREADY_ACTIVE
+
def __init__(self, bus_type=TYPE_SESSION, glib_mainloop=True):
self._connection = dbus_bindings.bus_get(bus_type)
@@ -139,6 +143,9 @@ class Bus:
for receiver in receivers:
receiver(*args)
+ def activate_service(self, service):
+ return dbus_bindings.bus_activate_service(self._connection, service)
+
class SystemBus(Bus):
"""The system-wide message bus
"""
diff --git a/python/dbus_bindings.pyx.in b/python/dbus_bindings.pyx.in
index 59c38586..db391e1d 100644
--- a/python/dbus_bindings.pyx.in
+++ b/python/dbus_bindings.pyx.in
@@ -1144,7 +1144,23 @@ def bus_get_unix_user(Connection connection, service_name):
if dbus_error_is_set(&error):
raise DBusException, error.message
return retval
+
+ACTIVATION_REPLY_ACTIVATED = DBUS_ACTIVATION_REPLY_ACTIVATED
+ACTIVATION_REPLY_ALREADY_ACTIVE = DBUS_ACTIVATION_REPLY_ALREADY_ACTIVE
+def bus_activate_service(Connection connection, service_name, flags=0):
+ cdef DBusError error
+ dbus_error_init(&error)
+ cdef dbus_bool_t retval
+ cdef dbus_uint32_t results
+ cdef DBusConnection *conn
+
+ conn = connection._get_conn()
+
+ retval = dbus_bus_activate_service(conn, service_name, flags, &results, &error)
+
+ return (retval, results)
+
def bus_register(Connection connection):
cdef DBusError error
dbus_error_init(&error)