[jboss-cvs] JBossAS SVN: r57341 - in branches/JBoss_4_0_2_CP/messaging/src/main/org/jboss/mq/server: . jmx
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Sun Oct 1 21:28:18 EDT 2006
Author: ryan.campbell at jboss.com
Date: 2006-10-01 21:28:15 -0400 (Sun, 01 Oct 2006)
New Revision: 57341
Modified:
branches/JBoss_4_0_2_CP/messaging/src/main/org/jboss/mq/server/BasicQueue.java
branches/JBoss_4_0_2_CP/messaging/src/main/org/jboss/mq/server/jmx/Queue.java
Log:
ASPATCH-35: JBAS-2971: Backport Subscriber stats for Queues
Modified: branches/JBoss_4_0_2_CP/messaging/src/main/org/jboss/mq/server/BasicQueue.java
===================================================================
--- branches/JBoss_4_0_2_CP/messaging/src/main/org/jboss/mq/server/BasicQueue.java 2006-10-02 01:14:03 UTC (rev 57340)
+++ branches/JBoss_4_0_2_CP/messaging/src/main/org/jboss/mq/server/BasicQueue.java 2006-10-02 01:28:15 UTC (rev 57341)
@@ -13,6 +13,7 @@
import java.util.Iterator;
import java.util.LinkedList;
import java.util.Map;
+import java.util.Set;
import java.util.SortedSet;
import java.util.TreeSet;
@@ -238,6 +239,19 @@
}
/**
+ * Get the subscribers
+ *
+ * @return the subscribers
+ */
+ public Set getSubscribers()
+ {
+ synchronized (receivers)
+ {
+ return (Set) subscribers.clone();
+ }
+ }
+
+ /**
* Add a subscription from the queue
*
* @param sub the subscription to add
Modified: branches/JBoss_4_0_2_CP/messaging/src/main/org/jboss/mq/server/jmx/Queue.java
===================================================================
--- branches/JBoss_4_0_2_CP/messaging/src/main/org/jboss/mq/server/jmx/Queue.java 2006-10-02 01:14:03 UTC (rev 57340)
+++ branches/JBoss_4_0_2_CP/messaging/src/main/org/jboss/mq/server/jmx/Queue.java 2006-10-02 01:28:15 UTC (rev 57341)
@@ -8,6 +8,7 @@
package org.jboss.mq.server.jmx;
import java.util.Arrays;
+import java.util.Collection;
import java.util.List;
import javax.jms.IllegalStateException;
@@ -143,4 +144,24 @@
{
return MessageCounter.getMessageStatistics(destination.getMessageCounter());
}
+
+ /**
+ * @jmx:managed-attribute
+ */
+ public int getSubscribersCount()
+ {
+ if (destination == null)
+ return 0;
+ return destination.queue.getSubscribers().size();
+ }
+
+ /**
+ * @jmx:managed-operation
+ */
+ public Collection listSubscribers()
+ {
+ if (destination == null)
+ return null;
+ return destination.queue.getSubscribers();
+ }
}
More information about the jboss-cvs-commits
mailing list