Author: tross
Date: Mon Mar  5 21:04:04 2012
New Revision: 1297230

URL: http://svn.apache.org/viewvc?rev=1297230&view=rev
Log:
NO-JIRA - Cleaned up qpidtoollibs
  1) Fixed the update() method to work on all object types
  2) Shortened the path needed in import statements
  3) Updated the connection-stats test to use qpidtoollibs

Modified:
    qpid/trunk/qpid/cpp/src/tests/ha_tests.py
    qpid/trunk/qpid/python/qpid/testlib.py
    qpid/trunk/qpid/tests/src/py/qpid_tests/broker_0_10/management.py
    qpid/trunk/qpid/tools/src/py/qpid-config
    qpid/trunk/qpid/tools/src/py/qpid-stat
    qpid/trunk/qpid/tools/src/py/qpidtoollibs/__init__.py
    qpid/trunk/qpid/tools/src/py/qpidtoollibs/broker.py

Modified: qpid/trunk/qpid/cpp/src/tests/ha_tests.py
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/tests/ha_tests.py?rev=1297230&r1=1297229&r2=1297230&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/tests/ha_tests.py (original)
+++ qpid/trunk/qpid/cpp/src/tests/ha_tests.py Mon Mar  5 21:04:04 2012
@@ -24,7 +24,7 @@ from qpid.datatypes import uuid4
 from brokertest import *
 from threading import Thread, Lock, Condition
 from logging import getLogger, WARN, ERROR, DEBUG
-from qpidtoollibs.broker import BrokerAgent
+from qpidtoollibs import BrokerAgent
 
 log = getLogger("qpid.ha-tests")
 

Modified: qpid/trunk/qpid/python/qpid/testlib.py
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/python/qpid/testlib.py?rev=1297230&r1=1297229&r2=1297230&view=diff
==============================================================================
--- qpid/trunk/qpid/python/qpid/testlib.py (original)
+++ qpid/trunk/qpid/python/qpid/testlib.py Mon Mar  5 21:04:04 2012
@@ -30,7 +30,7 @@ from qpid.harness import Skipped
 from qpid.exceptions import VersionError
 
 import qpid.messaging
-import qpidtoollibs.broker
+from qpidtoollibs import BrokerAgent
 
 class TestBase(unittest.TestCase):
     """Base class for Qpid test cases.
@@ -203,7 +203,7 @@ class TestBase010(unittest.TestCase):
         if 'broker_conn' not in self.__dict__:
             self.broker_conn = qpid.messaging.Connection(str(self.broker))
             self.broker_conn.open()
-            self.broker_access = 
qpidtoollibs.broker.BrokerAgent(self.broker_conn)
+            self.broker_access = BrokerAgent(self.broker_conn)
 
     def connect(self, host=None, port=None):
         url = self.broker

Modified: qpid/trunk/qpid/tests/src/py/qpid_tests/broker_0_10/management.py
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/tests/src/py/qpid_tests/broker_0_10/management.py?rev=1297230&r1=1297229&r2=1297230&view=diff
==============================================================================
--- qpid/trunk/qpid/tests/src/py/qpid_tests/broker_0_10/management.py (original)
+++ qpid/trunk/qpid/tests/src/py/qpid_tests/broker_0_10/management.py Mon Mar  
5 21:04:04 2012
@@ -24,8 +24,17 @@ from threading import Condition
 from time import sleep
 import qmf.console
 import qpid.messaging
+from qpidtoollibs import BrokerAgent
 
 class ManagementTest (TestBase010):
+
+    def setup_access(self):
+        if 'broker_agent' not in self.__dict__:
+            self.conn2 = qpid.messaging.Connection(self.broker)
+            self.conn2.open()
+            self.broker_agent = BrokerAgent(self.conn2)
+        return self.broker_agent
+
     """
     Tests for the management hooks
     """
@@ -559,12 +568,18 @@ class ManagementTest (TestBase010):
         """
         Test message in/out stats for connection
         """
-        self.startQmf()
+        agent = self.setup_access()
         conn = self.connect()
         session = conn.session("stats-session")
 
         #using qmf find named session and the corresponding connection:
-        conn_qmf = self.qmf.getObjects(_class="session", 
name="stats-session")[0]._connectionRef_
+        conn_qmf = None
+        sessions = agent.getAllSessions()
+        for s in sessions:
+            if s.name == "stats-session":
+                conn_qmf = agent.getConnection(s.connectionRef)
+
+        assert(conn_qmf)
         
         #send a message to a queue
         session.queue_declare(queue="stats-q", exclusive=True, 
auto_delete=True)

Modified: qpid/trunk/qpid/tools/src/py/qpid-config
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/tools/src/py/qpid-config?rev=1297230&r1=1297229&r2=1297230&view=diff
==============================================================================
--- qpid/trunk/qpid/tools/src/py/qpid-config (original)
+++ qpid/trunk/qpid/tools/src/py/qpid-config Mon Mar  5 21:04:04 2012
@@ -29,7 +29,7 @@ home = os.environ.get("QPID_TOOLS_HOME",
 sys.path.append(os.path.join(home, "python"))
 
 from qpid.messaging import Connection
-from qpidtoollibs.broker import BrokerAgent
+from qpidtoollibs import BrokerAgent
 
 usage = """
 Usage:  qpid-config [OPTIONS]

Modified: qpid/trunk/qpid/tools/src/py/qpid-stat
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/tools/src/py/qpid-stat?rev=1297230&r1=1297229&r2=1297230&view=diff
==============================================================================
--- qpid/trunk/qpid/tools/src/py/qpid-stat (original)
+++ qpid/trunk/qpid/tools/src/py/qpid-stat Mon Mar  5 21:04:04 2012
@@ -30,8 +30,8 @@ from qpid.messaging import Connection
 home = os.environ.get("QPID_TOOLS_HOME", 
os.path.normpath("/usr/share/qpid-tools"))
 sys.path.append(os.path.join(home, "python"))
 
-from qpidtoollibs.broker import BrokerAgent
-from qpidtoollibs.disp import Display, Header, Sorter, YN, Commas, TimeLong
+from qpidtoollibs import BrokerAgent
+from qpidtoollibs import Display, Header, Sorter, YN, Commas, TimeLong
 
 
 class Config:

Modified: qpid/trunk/qpid/tools/src/py/qpidtoollibs/__init__.py
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/tools/src/py/qpidtoollibs/__init__.py?rev=1297230&r1=1297229&r2=1297230&view=diff
==============================================================================
--- qpid/trunk/qpid/tools/src/py/qpidtoollibs/__init__.py (original)
+++ qpid/trunk/qpid/tools/src/py/qpidtoollibs/__init__.py Mon Mar  5 21:04:04 
2012
@@ -16,3 +16,7 @@
 # specific language governing permissions and limitations
 # under the License.
 #
+
+from qpidtoollibs.broker import *
+from qpidtoollibs.disp import *
+

Modified: qpid/trunk/qpid/tools/src/py/qpidtoollibs/broker.py
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/tools/src/py/qpidtoollibs/broker.py?rev=1297230&r1=1297229&r2=1297230&view=diff
==============================================================================
--- qpid/trunk/qpid/tools/src/py/qpidtoollibs/broker.py (original)
+++ qpid/trunk/qpid/tools/src/py/qpidtoollibs/broker.py Mon Mar  5 21:04:04 2012
@@ -95,9 +95,8 @@ class BrokerAgent(object):
       self.sess.acknowledge()
     return items
 
-  def _doNameQuery(self, class_name, object_name, 
package_name='org.apache.qpid.broker'):
-    query = {'_what'      : 'OBJECT',
-             '_object_id' : {'_object_name' : "%s:%s:%s" % (package_name, 
class_name, object_name)}}
+  def _doNameQuery(self, object_id):
+    query = {'_what'      : 'OBJECT', '_object_id' : {'_object_name' : 
object_id}}
     correlator = self._sendRequest('_query_request', query)
     response = self.reply_rx.fetch(10)
     if response.properties['qmf.opcode'] != '_query_response':
@@ -123,13 +122,18 @@ class BrokerAgent(object):
       objs.append(cls(self, item))
     return objs
 
-  def _getBrokerObject(self, cls, name):
-    obj = self._doNameQuery(cls.__name__.lower(), name)
+  def _getBrokerObject(self, cls, oid):
+    obj = self._doNameQuery(oid)
     if obj:
       return cls(self, obj)
     return None
 
   def _getSingleObject(self, cls):
+    #
+    # getAllBrokerObjects is used instead of getBrokerObject(Broker, 
'amqp-broker') because
+    # of a bug that used to be in the broker whereby by-name queries did not 
return the
+    # object timestamps.
+    #
     objects = self._getAllBrokerObjects(cls)
     if objects: return objects[0]
     return None
@@ -138,11 +142,6 @@ class BrokerAgent(object):
     """
     Get the Broker object that contains broker-scope statistics and operations.
     """
-    #
-    # getAllBrokerObjects is used instead of getBrokerObject(Broker, 
'amqp-broker') because
-    # of a bug that used to be in the broker whereby by-name queries did not 
return the
-    # object timestamps.
-    #
     return self._getSingleObject(Broker)
 
 
@@ -155,32 +154,32 @@ class BrokerAgent(object):
   def getAllConnections(self):
     return self._getAllBrokerObjects(Connection)
 
-  def getConnection(self, name):
-    return self._getBrokerObject(Connection, name)
+  def getConnection(self, oid):
+    return self._getBrokerObject(Connection, 
"org.apache.qpid.broker:connection:%s" % oid)
 
   def getAllSessions(self):
     return self._getAllBrokerObjects(Session)
 
-  def getSession(self, name):
-    return self._getBrokerObject(Session, name)
+  def getSession(self, oid):
+    return self._getBrokerObject(Session, "org.apache.qpid.broker:session:%s" 
% oid)
 
   def getAllSubscriptions(self):
     return self._getAllBrokerObjects(Subscription)
 
-  def getSubscription(self, name):
-    return self._getBrokerObject(Subscription, name)
+  def getSubscription(self, oid):
+    return self._getBrokerObject(Subscription, 
"org.apache.qpid.broker:subscription:%s" % oid)
 
   def getAllExchanges(self):
     return self._getAllBrokerObjects(Exchange)
 
   def getExchange(self, name):
-    return self._getBrokerObject(Exchange, name)
+    return self._getBrokerObject(Exchange, 
"org.apache.qpid.broker:exchange:%s" % name)
 
   def getAllQueues(self):
     return self._getAllBrokerObjects(Queue)
 
   def getQueue(self, name):
-    return self._getBrokerObject(Queue, name)
+    return self._getBrokerObject(Queue, "org.apache.qpid.broker:queue:%s" % 
name)
 
   def getAllBindings(self):
     return self._getAllBrokerObjects(Binding)
@@ -277,9 +276,9 @@ class BrokerAgent(object):
     """Delete an object of the specified type"""
     pass
 
-  def query(self, _type, name):
+  def query(self, _type, oid):
     """Query the current state of an object"""
-    return self._getBrokerObject(self, _type, name)
+    return self._getBrokerObject(self, _type, oid)
 
 
 class BrokerObject(object):
@@ -302,6 +301,9 @@ class BrokerObject(object):
           return full_name[colon+1:]
     return value
 
+  def getObjectId(self):
+    return self.content['_object_id']['_object_name']
+
   def getAttributes(self):
     return self.values
 
@@ -318,7 +320,7 @@ class BrokerObject(object):
     """
     Reload the property values from the agent.
     """
-    refreshed = self.broker._getBrokerObject(self.__class__, self.name)
+    refreshed = self.broker._getBrokerObject(self.__class__, 
self.getObjectId())
     if refreshed:
       self.content = refreshed.content
       self.values = self.content['_values']



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to