[ https://issues.apache.org/jira/browse/QPID-1350?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ted Ross updated QPID-1350: --------------------------- Status: Ready To Review (was: In Progress) > Object dereference feature in the QMF Console API > ------------------------------------------------- > > Key: QPID-1350 > URL: https://issues.apache.org/jira/browse/QPID-1350 > Project: Qpid > Issue Type: New Feature > Components: C++ Broker, Python Client > Affects Versions: M4 > Reporter: Ted Ross > Assignee: Ted Ross > Priority: Minor > Fix For: M4 > > > This new feature lets users of the Python QMF API easily follow references in > objects. > For example: > Start a QMF console session and connect to the broker on the local host: > >>> s = Session() > >>> b = s.addBroker() > Get the first in the list of queue objects: > >>> queue = s.getObjects(_class="queue")[0] > Look at the queue's properties: > >>> queue.getProperties() > [(vhostRef, 0-0-1-0-1152921504606846979), (name, > 'reply-kids-pc.localdomain.19302'), (durable, False), (autoDelete, True), > (exclusive, True), (arguments, {})] > Note that the vhostRef is an objectId. Now there's a very easy way to get > the referenced vhost object: > >>> vhost = queue._vhostRef_ > >>> vhost.getProperties() > [(brokerRef, 0-0-1-0-1152921504606846978), (name, '/')] > Note the "_" added before and after the property name. Without the > underscores, the value returned will be simply the objectId. With the > underscores, the reference will be followed and the referenced object > returned. > Likewise, we can get the broker object: > >>> queue._vhostRef_._brokerRef_.getProperties() > [(systemRef, 0-0-1-0-1152921504606846977), (port, 5672), (workerThreads, 5), > (maxConns, 500), (connBacklog, 10), (stagingThreshold, 5000000), > (mgmtPubInterval, 10), (version, '0.3'), (dataDir, '/home/ross/.qpidd')] > Or even invoke a method on the broker: > >>> queue._vhostRef_._brokerRef_.echo(1,"text") > OK (0) - {'body': u'text', 'sequence': 1} -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.