From: David Adam (zanchey) Date: Sun, 25 Oct 2009 13:29:52 +0000 (+0800) Subject: client-json: produce slightly more valid JSON X-Git-Url: https://git.ucc.asn.au/?p=uccdoor.git;a=commitdiff_plain;h=680eed303f5783c8e199147309329b5533f2ad4a;hp=0bce98bf71fe9e221df2a7ae238d7322ff23fd09 client-json: produce slightly more valid JSON (now with added generator pipelines!) --- diff --git a/client-json.py b/client-json.py index 1733033..6db8e4c 100755 --- a/client-json.py +++ b/client-json.py @@ -10,17 +10,14 @@ if __name__ == '__main__': # get on the bus system_bus = dbus.SystemBus() - doors = {'uccdoor': None, 'unisfadoor': None, 'chdoor': None, 'mrdoor': None, 'uccpir': None} + doors = ('uccdoor', 'unisfadoor', 'chdoor', 'mrdoor', 'uccpir') - for door in doors.keys(): - doors[door] = system_bus.get_object('au.asn.ucc.DoorServer', '/au/asn/ucc/doors/%s' % door) + objects = (system_bus.get_object('au.asn.ucc.DoorServer', '/au/asn/ucc/doors/%s' % door) + for door in doors) + statuses = (remote_object.get_status(dbus_interface='au.asn.ucc.DoorInterface') + for remote_object in objects) + status_ints = (int(x) for x in statuses) print "Content-Type: text/json" print - print "{" - - for door, remote_object in doors.items(): - status = remote_object.get_status(dbus_interface='au.asn.ucc.DoorInterface') - print '"%s": %d,' % (door, status) - - print "}" + print dict(zip(doors, status_ints))