| Server IP : 162.214.74.102 / Your IP : 216.73.217.114 Web Server : Apache System : Linux dedi-4363141.lrsys.com.br 3.10.0-1160.119.1.el7.tuxcare.els25.x86_64 #1 SMP Wed Oct 1 17:37:27 UTC 2025 x86_64 User : lrsys ( 1015) PHP Version : 5.6.40 Disable Function : exec,passthru,shell_exec,system MySQL : ON | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /usr/share/doc/python-slip-0.4.0/dbus/example/ |
Upload File : |
#!/usr/bin/python
# -*- coding: utf-8 -*-
import gobject
import dbus
import dbus.service
import dbus.mainloop.glib
# FIND THE ACTUAL EXAMPLE CODE BELOW...
# try to find the module in the unpacked source tree
import sys
import os.path
import import_marker
# try to find the slip.dbus module
import imp
modfile = import_marker.__file__
path = os.path.dirname(modfile)
found = False
oldsyspath = sys.path
while not found and path and path != "/":
path = os.path.abspath(os.path.join(path, os.path.pardir))
try:
slipmod = imp.find_module("slip", [path] + sys.path)
if slipmod[1].startswith(path + "/"):
found = True
sys.path.insert(0, path)
import slip.dbus.service
except ImportError:
pass
if not found:
# fall back to system paths
sys.path = oldsyspath
import slip.dbus.service
# ...BELOW HERE:
class ExampleObject(slip.dbus.service.Object):
def __init__(self, *p, **k):
super(ExampleObject, self).__init__(*p, **k)
self.config_data = """These are the contents of a configuration file.
They extend over some lines.
And one more."""
print "service object constructed"
def __del__(self):
print "service object deleted"
@slip.dbus.polkit.require_auth("org.fedoraproject.slip.example.read")
@dbus.service.method("org.fedoraproject.slip.example.mechanism",
in_signature="", out_signature="s")
def read(self):
print "%s.read () -> '%s'" % (self, self.config_data)
return self.config_data
@slip.dbus.polkit.require_auth("org.fedoraproject.slip.example.write")
@dbus.service.method("org.fedoraproject.slip.example.mechanism",
in_signature="s", out_signature="")
def write(self, config_data):
print "%s.write ('%s')" % (self, config_data)
self.config_data = config_data
if __name__ == "__main__":
dbus.mainloop.glib.DBusGMainLoop(set_as_default=True)
bus = dbus.SessionBus()
name = dbus.service.BusName("org.fedoraproject.slip.example.mechanism",
bus)
object = ExampleObject(name, "/org/fedoraproject/slip/example/object")
mainloop = gobject.MainLoop()
slip.dbus.service.set_mainloop(mainloop)
print "Running example service."
mainloop.run()