diff options
| author | Keith Wall <kwall@apache.org> | 2014-07-24 17:39:38 +0000 |
|---|---|---|
| committer | Keith Wall <kwall@apache.org> | 2014-07-24 17:39:38 +0000 |
| commit | 0d19d80e80c3169ec38bda19450573a6301932ca (patch) | |
| tree | 24ee38f964dee3baed1db3e00f4409fc3d2cdb65 /qpid/java/management/example | |
| parent | 9651210770b5c2ff04877739403687f06e72ba3c (diff) | |
| download | qpid-python-0d19d80e80c3169ec38bda19450573a6301932ca.tar.gz | |
NO-JIRA: [Java Broker] update JMX QueueInformation example to use the necessary quoted elements in its ObjectNames
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1613198 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/java/management/example')
| -rw-r--r-- | qpid/java/management/example/src/main/java/org/apache/qpid/example/jmxexample/QueueInformation.java | 34 |
1 files changed, 20 insertions, 14 deletions
diff --git a/qpid/java/management/example/src/main/java/org/apache/qpid/example/jmxexample/QueueInformation.java b/qpid/java/management/example/src/main/java/org/apache/qpid/example/jmxexample/QueueInformation.java index 2b34e2da5d..faac704dbc 100644 --- a/qpid/java/management/example/src/main/java/org/apache/qpid/example/jmxexample/QueueInformation.java +++ b/qpid/java/management/example/src/main/java/org/apache/qpid/example/jmxexample/QueueInformation.java @@ -119,7 +119,7 @@ public class QueueInformation _mbsc = con.getMBeanServerConnection(); - Set<ObjectName> names = _mbsc.queryNames(new ObjectName("org.apache.qpid:type=VirtualHost.Queue,VirtualHost=" + _vhost + ",*"), null); + Set<ObjectName> names = _mbsc.queryNames(new ObjectName("org.apache.qpid:type=VirtualHost.Queue,VirtualHost=" + ObjectName.quote(_vhost) + ",*"), null); // Print header if (names.size() > 0) @@ -248,7 +248,7 @@ public class QueueInformation private static void getDetails(boolean printRates) throws Exception { - for (ObjectName object : getMatchingObjects()) + for (ObjectName object : getMatchingObjects(_queueNames)) { try { @@ -334,27 +334,33 @@ public class QueueInformation return con; } - public static ObjectName[] getMatchingObjects() throws IOException, MalformedObjectNameException + public static ObjectName[] getMatchingObjects(Set<String> queueNames) throws IOException, MalformedObjectNameException { + Set<ObjectName> requestedObjects = new HashSet<>(); - // Gets all Queues names - if (_queueNames == null) + if (queueNames == null) { - _queueNames = new HashSet<String>(); - _queueNames.add("*"); - } - - Set<ObjectName> requestedObjects = new HashSet<ObjectName>(); - - for (String queue : _queueNames) - { - Set<ObjectName> matchingObjects = _mbsc.queryNames(new ObjectName("org.apache.qpid:type=VirtualHost.Queue,VirtualHost=" + _vhost + ",name=" + queue + ",*"), null); + // Gets all Queues names + Set<ObjectName> matchingObjects = _mbsc.queryNames(new ObjectName("org.apache.qpid:type=VirtualHost.Queue,VirtualHost=" + ObjectName.quote(_vhost) + ",name=*,*"), null); if (!matchingObjects.isEmpty()) { requestedObjects.addAll(matchingObjects); } } + else + { + for (String queue : queueNames) + { + Set<ObjectName> matchingObjects = _mbsc.queryNames(new ObjectName("org.apache.qpid:type=VirtualHost.Queue,VirtualHost=" + ObjectName.quote(_vhost) + ",name=" + ObjectName.quote(queue) + ",*"), null); + + if (!matchingObjects.isEmpty()) + { + requestedObjects.addAll(matchingObjects); + } + } + + } return requestedObjects.toArray(new ObjectName[requestedObjects.size()]); } |
