You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by tr...@apache.org on 2008/05/22 20:09:32 UTC

svn commit: r659186 - /incubator/qpid/trunk/qpid/python/commands/qpid-route

Author: tross
Date: Thu May 22 11:09:31 2008
New Revision: 659186

URL: http://svn.apache.org/viewvc?rev=659186&view=rev
Log:
Forbid broker to route to self, default to localhost when not specified

Modified:
    incubator/qpid/trunk/qpid/python/commands/qpid-route

Modified: incubator/qpid/trunk/qpid/python/commands/qpid-route
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/python/commands/qpid-route?rev=659186&r1=659185&r2=659186&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/python/commands/qpid-route (original)
+++ incubator/qpid/trunk/qpid/python/commands/qpid-route Thu May 22 11:09:31 2008
@@ -33,12 +33,12 @@
 def Usage ():
     print "Usage:  qpid-route [OPTIONS] link add  <dest-broker> <src-broker>"
     print "        qpid-route [OPTIONS] link del  <dest-broker> <src-broker>"
-    print "        qpid-route [OPTIONS] link list <dest-broker>"
+    print "        qpid-route [OPTIONS] link list [<dest-broker>]"
     print
     print "        qpid-route [OPTIONS] route add   <dest-broker> <src-broker> <exchange> <routing-key> [id] [exclude-list]"
     print "        qpid-route [OPTIONS] route del   <dest-broker> <src-broker> <exchange> <routing-key>"
-    print "        qpid-route [OPTIONS] route list  <dest-broker>"
-    print "        qpid-route [OPTIONS] route flush <dest-broker>"
+    print "        qpid-route [OPTIONS] route list  [<dest-broker>]"
+    print "        qpid-route [OPTIONS] route flush [<dest-broker>]"
     print
     print "Options:"
     print "    -v [ --verbose ]         Verbose output"
@@ -100,6 +100,10 @@
         self.src  = Broker (srcBroker)
         mc = self.mclient
 
+        if self.dest.name() == self.src.name():
+            print "Linking broker to itself is not permitted"
+            sys.exit(1)
+
         brokers = mc.syncGetObjects (self.mch, "broker")
         broker = brokers[0]
         link = self.getLink()
@@ -154,6 +158,10 @@
         self.src  = Broker (srcBroker)
         mc = self.mclient
 
+        if self.dest.name() == self.src.name():
+            print "Linking broker to itself is not permitted"
+            sys.exit(1)
+
         brokers = mc.syncGetObjects (self.mch, "broker")
         broker = brokers[0]
 
@@ -314,12 +322,16 @@
         _dellink = True
 
 nargs = len (cargs)
-if nargs < 3:
+if nargs < 2:
     Usage ()
+if nargs == 2:
+    destBroker = "localhost"
+else:
+    destBroker = cargs[2]
 
 group = cargs[0]
 cmd   = cargs[1]
-rm    = RouteManager (cargs[2])
+rm    = RouteManager (destBroker)
 rm.ConnectToBroker ()
 
 if group == "link":
@@ -332,8 +344,6 @@
             Usage()
         rm.DelLink (cargs[3])
     elif cmd == "list":
-        if nargs != 3:
-            Usage()
         rm.ListLinks ()
 
 elif group == "route":
@@ -352,9 +362,6 @@
         else:
             rm.DelRoute (cargs[3], cargs[4], cargs[5])
     else:
-        if nargs != 3:
-            Usage ()
-
         if   cmd == "list":
             rm.ListRoutes ()
         elif cmd == "flush":