Author: robbie
Date: Fri Jul 24 14:21:06 2009
New Revision: 797473
URL: http://svn.apache.org/viewvc?rev=797473&view=rev
Log:
QPID-2000: add a method to the VirtualHostManager MBean to retrieve a Map keyed
by Queue names in the vhost, with values indicating their respective depths in
bytes
Modified:
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/AMQBrokerManagerMBean.java
qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedBroker.java
Modified:
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/AMQBrokerManagerMBean.java
URL:
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/AMQBrokerManagerMBean.java?rev=797473&r1=797472&r2=797473&view=diff
==============================================================================
---
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/AMQBrokerManagerMBean.java
(original)
+++
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/AMQBrokerManagerMBean.java
Fri Jul 24 14:21:06 2009
@@ -39,6 +39,8 @@
import java.io.IOException;
import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.Map;
import javax.management.JMException;
import javax.management.MBeanException;
@@ -75,7 +77,7 @@
private final MessageStore _messageStore;
private final VirtualHost.VirtualHostMBean _virtualHostMBean;
-
+
@MBeanConstructor("Creates the Broker Manager MBean")
public AMQBrokerManagerMBean(VirtualHost.VirtualHostMBean
virtualHostMBean) throws JMException
{
@@ -112,6 +114,29 @@
}
/**
+ * Returns a Map keyed by QueueName, detailing its associated QueueDepth
in bytes.
+ * @since Qpid JMX API 1.3
+ * @throws IOException
+ */
+ public Map<String,Long> viewQueueNamesDepths() throws IOException
+ {
+ Map<String,Long> queueDepthMap = new
HashMap<String,Long>(_queueRegistry.getQueues().size());
+
+ String queueName;
+ Long queueDepth;
+
+ for(AMQQueue queue : _queueRegistry.getQueues())
+ {
+ queueName = queue.getName().toString();
+ queueDepth = queue.getQueueDepth();
+
+ queueDepthMap.put(queueName,queueDepth);
+ }
+
+ return queueDepthMap;
+ }
+
+ /**
* Creates new exchange and registers it with the registry.
*
* @param exchangeName
Modified:
qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedBroker.java
URL:
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedBroker.java?rev=797473&r1=797472&r2=797473&view=diff
==============================================================================
---
qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedBroker.java
(original)
+++
qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedBroker.java
Fri Jul 24 14:21:06 2009
@@ -22,9 +22,12 @@
package org.apache.qpid.management.common.mbeans;
import java.io.IOException;
+import java.util.Map;
import javax.management.JMException;
import javax.management.MBeanOperationInfo;
+import javax.management.openmbean.OpenDataException;
+import javax.management.openmbean.TabularData;
import org.apache.qpid.management.common.mbeans.annotations.MBeanAttribute;
import org.apache.qpid.management.common.mbeans.annotations.MBeanOperation;
@@ -52,6 +55,15 @@
String[] getExchangeTypes() throws IOException;
/**
+ * Returns a Map keyed by QueueName, detailing its associated QueueDepth
in bytes.
+ * @since Qpid JMX API 1.3
+ * @throws IOException
+ */
+ @MBeanOperation(name = "viewQueueNamesDepths", description = "View the
queue names and depths in this virtualhost",
+ impact = MBeanOperationInfo.INFO)
+ Map<String,Long> viewQueueNamesDepths() throws IOException;
+
+ /**
* Creates a new Exchange.
* @param name
* @param type
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:[email protected]