X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=test%2Fmonitor-services;h=c520a8cda6c188c70ac6c4a5508f50d30cff62fc;hb=5479dad2b3b5f342f51ca6e7ec8a5a501820bd55;hp=cbae37729ef88c15ea7a182db25bde0f0c4aa12c;hpb=e5379d85aab8bd6cd6d675048797b7134be28dc9;p=platform%2Fupstream%2Fconnman.git diff --git a/test/monitor-services b/test/monitor-services index cbae377..c520a8c 100755 --- a/test/monitor-services +++ b/test/monitor-services @@ -1,13 +1,13 @@ #!/usr/bin/python -import gobject +from gi.repository import GLib import dbus import dbus.mainloop.glib def extract_values(values): val = "{" - for key in values.keys(): + for key in list(values.keys()): val += " " + key + "=" if key in ["Servers", "Excludes"]: val += extract_list(values[key]) @@ -25,24 +25,44 @@ def extract_list(list): def property_changed(name, value, path): service = path[path.rfind("/") + 1:] - if name in ["Profiles", "Services", "Technologies"]: + if name in ["Services"]: val = "[" for i in value: val = val + " " + i[i.rfind("/") + 1:] val = val + " ]" elif name in ["IPv4", "IPv4.Configuration", "IPv6", "IPv6.Configuration", - "Proxy", "Proxy.Configuration", "Ethernet"]: + "Proxy", "Proxy.Configuration", "Ethernet", "Provider"]: val = extract_values(value) elif name in ["Nameservers", "Nameservers.Configuration", - "Domains", "Domains.Configuration" - "Security"]: + "Domains", "Domains.Configuration", + "Timeservers", "Timeservers.Configuration", "Security"]: val = extract_list(value) elif name in ["Strength", "Priority"]: val = int(value) else: val = str(value) - print "[%s] %s = %s" % (service, name, val) + print("[%s] %s = %s" % (service, name, val)) + +def services_changed(services, removed): + for i in services: + service = i[0][i[0].rfind("/") + 1:] + print("[%s] changed" % (service)) + for n in list(i[1].keys()): + property_changed(n, i[1][n], i[0]) + for i in removed: + service = i[i.rfind("/") + 1:] + print("[%s] removed" % (service)) + +def technology_added(path, properties): + technology = path[path.rfind("/") + 1:] + print("[%s] added" % (technology)) + for n in list(properties.keys()): + property_changed(n, properties[n], technology) + +def technology_removed(path): + technology = path[path.rfind("/") + 1:] + print("[%s] removed" % (technology)) if __name__ == '__main__': dbus.mainloop.glib.DBusGMainLoop(set_as_default=True) @@ -51,9 +71,36 @@ if __name__ == '__main__': bus.add_signal_receiver(property_changed, bus_name="net.connman", + dbus_interface="net.connman.Manager", + signal_name="PropertyChanged", + path_keyword="path") + + bus.add_signal_receiver(services_changed, + bus_name="net.connman", + dbus_interface="net.connman.Manager", + signal_name="ServicesChanged") + + bus.add_signal_receiver(property_changed, + bus_name="net.connman", dbus_interface="net.connman.Service", - signal_name = "PropertyChanged", + signal_name="PropertyChanged", + path_keyword="path") + + bus.add_signal_receiver(technology_added, + bus_name="net.connman", + dbus_interface="net.connman.Manager", + signal_name="TechnologyAdded") + + bus.add_signal_receiver(technology_removed, + bus_name="net.connman", + dbus_interface="net.connman.Manager", + signal_name="TechnologyRemoved") + + bus.add_signal_receiver(property_changed, + bus_name="net.connman", + dbus_interface="net.connman.Technology", + signal_name="PropertyChanged", path_keyword="path") - mainloop = gobject.MainLoop() + mainloop = GLib.MainLoop() mainloop.run()