---
 test/create-proxy-config |   47 +++++++++++++++++++++++++++++++++++++--------
 1 files changed, 38 insertions(+), 9 deletions(-)

diff --git a/test/create-proxy-config b/test/create-proxy-config
index 93f075e..cc0c266 100755
--- a/test/create-proxy-config
+++ b/test/create-proxy-config
@@ -4,24 +4,53 @@ import sys
 import time
 import dbus
 
+def usage():
+       print "Usage:"
+       print "%s direct" % (sys.argv[0])
+       print "%s auto url=<url> [if=interface]" % (sys.argv[0])
+       print "%s manual servers=<server1,server2,...> 
[exclude=<exclude1,exclude2,...>] [if=interface]" % (sys.argv[0])
+       sys.exit(1)
+
 if (len(sys.argv) < 2):
-       print "Usage: %s <url> [interface]" % (sys.argv[0])
-       sys.exit(1)
+       usage()
 
 bus = dbus.SystemBus()
 
 manager = dbus.Interface(bus.get_object('org.pacrunner',
                        '/org/pacrunner/manager'), 'org.pacrunner.Manager')
 
-url = sys.argv[1]
+values = { "Method" : sys.argv[1] }
+
+if values["Method"] != "direct":
+       if len(sys.argv) < 3:
+               usage()
+       for arg in sys.argv[2:]:
+               if arg.startswith("url="):
+                       url = arg.replace("url=", "", 1)
+                       values["URL"] = url
+               if arg.startswith("servers="):
+                       try:
+                               servers_uris = 
arg.replace("servers=","",1).split(",")
+                       except:
+                               servers_uris = []
+                       values["Servers"] = servers_uris
+               if arg.startswith("excludes="):
+                       try:
+                               excludes_uris = 
arg.replace("excludes=","",1).split(",")
+                       except:
+                               excludes_uris = []
+                       values["Excludes"] = excludes_uris
+               if arg.startswith("if="):
+                       interface = arg.replace("if=", "", 1)
+                       values["Interface"] = interface
 
-if (len(sys.argv) > 2):
-       interface = sys.argv[2]
-else:
-       interface = ""
+print values
 
-path = manager.CreateProxyConfiguration( { "Method" : "auto", "URL" : url,
-                                               "Interface" : interface } )
+try:
+       path = manager.CreateProxyConfiguration(dbus.Dictionary(values, 
signature='sv'))
+except dbus.exceptions.DBusException, e_msg:
+       print e_msg
+       sys.exit(1)
 
 print "Proxy configuration: %s" % (path)
 
-- 
1.7.1

_______________________________________________
connman mailing list
connman@connman.net
http://lists.connman.net/listinfo/connman

Reply via email to