summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog12
-rw-r--r--configure.in1
-rw-r--r--python/Makefile.am2
-rw-r--r--python/examples/list-system-services.py24
4 files changed, 39 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 9824f2bc..2b2dbd7f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,17 @@
2004-05-27 Seth Nickell <seth@gnome.org>
+ * configure.in:
+ * python/Makefile.am:
+
+ Include the example python apps in the tarball.
+
+ * python/examples/list-system-services.py
+
+ Add a python new example that fetches the list of services
+ from the system bus.
+
+2004-05-27 Seth Nickell <seth@gnome.org>
+
* python/dbus.py:
* python/dbus_bindings.pyx.in:
diff --git a/configure.in b/configure.in
index cec7be6f..7162f876 100644
--- a/configure.in
+++ b/configure.in
@@ -1082,6 +1082,7 @@ Makefile
dbus/Makefile
glib/Makefile
python/Makefile
+python/examples/Makefile
qt/Makefile
gcj/Makefile
gcj/org/Makefile
diff --git a/python/Makefile.am b/python/Makefile.am
index d57e08f5..a1e22b86 100644
--- a/python/Makefile.am
+++ b/python/Makefile.am
@@ -1,3 +1,5 @@
+SUBDIRS=examples
+
INCLUDES=-I$(top_builddir) -I$(top_builddir)/glib $(DBUS_CLIENT_CFLAGS) $(DBUS_GLIB_CFLAGS) $(DBUS_GLIB_TOOL_CFLAGS) $(PYTHON_INCLUDES)
dbusdir = $(pythondir)
diff --git a/python/examples/list-system-services.py b/python/examples/list-system-services.py
new file mode 100644
index 00000000..20b79d59
--- /dev/null
+++ b/python/examples/list-system-services.py
@@ -0,0 +1,24 @@
+"""Lists services on the system bus
+"""
+import dbus
+
+# Get a connection to the SYSTEM bus
+bus = dbus.Bus(dbus.Bus.TYPE_SYSTEM)
+
+# Get the service provided by the dbus-daemon named org.freedesktop.DBus
+dbus_service = bus.get_service('org.freedesktop.DBus')
+
+# Get a reference to the desktop bus' standard object, denoted
+# by the path /org/freedesktop/DBus. The object /org/freedesktop/DBus
+# implements the 'org.freedesktop.DBus' interface
+dbus_object = dbus_service.get_object('/org/freedesktop/DBus',
+ 'org.freedesktop.DBus')
+
+# One of the member functions in the org.freedesktop.DBus interface
+# is ListServices(), which provides a list of all the other services
+# registered on this bus. Call it, and print the list.
+system_service_list = dbus_object.ListServices()
+
+for service in system_service_list:
+ if service[0] != ':':
+ print (service)