[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