X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=test%2Fmonitor-services;h=d570e5f57d9c205533ee272e719bd87c6e88d69a;hb=f495d2ed3cb26cba1d2619e3a03a7affa955a7af;hp=f1d7cf1c202505bd147f94c677ab70d8b38af061;hpb=cec618e31bd2dd646f5c44791c4f131b722285a5;p=platform%2Fupstream%2Fconnman.git diff --git a/test/monitor-services b/test/monitor-services index f1d7cf1..d570e5f 100755 --- a/test/monitor-services +++ b/test/monitor-services @@ -7,27 +7,62 @@ import dbus.mainloop.glib def extract_values(values): val = "{" - for key in values.keys(): + for key in list(values.keys()): val += " " + key + "=" - val += str(values[key]) + if key in ["Servers", "Excludes"]: + val += extract_list(values[key]) + else: + val += str(values[key]) val += " }" return val +def extract_list(list): + val = "[" + for i in list: + val += " " + str(i) + val += " ]" + return val + def property_changed(name, value, path): service = path[path.rfind("/") + 1:] - if name in ["Profiles", "Services", "Providers", "Technologies", - "Devices", "Networks"]: + if name in ["Services"]: val = "[" for i in value: val = val + " " + i[i.rfind("/") + 1:] val = val + " ]" - elif name in ["IPv4", "IPv4.Configuration", "Proxy", "Ethernet"]: + elif name in ["IPv4", "IPv4.Configuration", + "IPv6", "IPv6.Configuration", + "Proxy", "Proxy.Configuration", "Ethernet", "Provider"]: val = extract_values(value) + elif name in ["Nameservers", "Nameservers.Configuration", + "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) @@ -35,9 +70,36 @@ if __name__ == '__main__': bus = dbus.SystemBus() bus.add_signal_receiver(property_changed, - bus_name="org.moblin.connman", - dbus_interface="org.moblin.connman.Service", - signal_name = "PropertyChanged", + 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", + 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()