Author: markt
Date: Mon Apr 30 22:00:13 2012
New Revision: 1332433

URL: http://svn.apache.org/viewvc?rev=1332433&view=rev
Log:
GOP & GKOP - expose remaining attribute getters via JMX
GKOP - expose list of keys via JMX

Modified:
    
commons/proper/pool/trunk/src/main/java/org/apache/commons/pool2/impl/GenericKeyedObjectPool.java
    
commons/proper/pool/trunk/src/main/java/org/apache/commons/pool2/impl/GenericKeyedObjectPoolMBean.java
    
commons/proper/pool/trunk/src/main/java/org/apache/commons/pool2/impl/GenericObjectPool.java
    
commons/proper/pool/trunk/src/main/java/org/apache/commons/pool2/impl/GenericObjectPoolMBean.java

Modified: 
commons/proper/pool/trunk/src/main/java/org/apache/commons/pool2/impl/GenericKeyedObjectPool.java
URL: 
http://svn.apache.org/viewvc/commons/proper/pool/trunk/src/main/java/org/apache/commons/pool2/impl/GenericKeyedObjectPool.java?rev=1332433&r1=1332432&r2=1332433&view=diff
==============================================================================
--- 
commons/proper/pool/trunk/src/main/java/org/apache/commons/pool2/impl/GenericKeyedObjectPool.java
 (original)
+++ 
commons/proper/pool/trunk/src/main/java/org/apache/commons/pool2/impl/GenericKeyedObjectPool.java
 Mon Apr 30 22:00:13 2012
@@ -1458,6 +1458,7 @@ public class GenericKeyedObjectPool<K,T>
      * @return  An estimate of the number of threads currently blocked waiting
      *          for an object from the pool
      */
+    @Override
     public int getNumWaiters() {
         int result = 0;
 
@@ -1481,6 +1482,7 @@ public class GenericKeyedObjectPool<K,T>
      * @return  An estimate of the number of threads currently blocked waiting
      *          for an object from the pool for the given key
      */
+    @Override
     public int getNumWaiters(K key) {
         if (getBlockWhenExhausted()) {
             final ObjectDeque<T> objectDeque = poolMap.get(key);
@@ -1495,6 +1497,19 @@ public class GenericKeyedObjectPool<K,T>
     }
 
     @Override
+    public List<K> getKeys() {
+        List<K> keyCopy = new ArrayList<K>();
+        Lock lock = keyLock.readLock();
+        lock.lock();
+        try {
+            keyCopy.addAll(poolKeyList);
+        } finally {
+            lock.unlock();
+        }
+        return keyCopy;
+    }
+
+    @Override
     public ObjectName getJmxName() {
         return oname;
     }

Modified: 
commons/proper/pool/trunk/src/main/java/org/apache/commons/pool2/impl/GenericKeyedObjectPoolMBean.java
URL: 
http://svn.apache.org/viewvc/commons/proper/pool/trunk/src/main/java/org/apache/commons/pool2/impl/GenericKeyedObjectPoolMBean.java?rev=1332433&r1=1332432&r2=1332433&view=diff
==============================================================================
--- 
commons/proper/pool/trunk/src/main/java/org/apache/commons/pool2/impl/GenericKeyedObjectPoolMBean.java
 (original)
+++ 
commons/proper/pool/trunk/src/main/java/org/apache/commons/pool2/impl/GenericKeyedObjectPoolMBean.java
 Mon Apr 30 22:00:13 2012
@@ -16,6 +16,7 @@
  */
 package org.apache.commons.pool2.impl;
 
+import java.util.List;
 import java.util.Map;
 
 /**
@@ -56,4 +57,7 @@ public interface GenericKeyedObjectPoolM
     long getMaxBorrowWaitTimeMillis();
     String[] getSwallowedExceptions();
     String getCreationStackTrace();
+    int getNumWaiters();
+    int getNumWaiters(K key);
+    List<K> getKeys();
 }

Modified: 
commons/proper/pool/trunk/src/main/java/org/apache/commons/pool2/impl/GenericObjectPool.java
URL: 
http://svn.apache.org/viewvc/commons/proper/pool/trunk/src/main/java/org/apache/commons/pool2/impl/GenericObjectPool.java?rev=1332433&r1=1332432&r2=1332433&view=diff
==============================================================================
--- 
commons/proper/pool/trunk/src/main/java/org/apache/commons/pool2/impl/GenericObjectPool.java
 (original)
+++ 
commons/proper/pool/trunk/src/main/java/org/apache/commons/pool2/impl/GenericObjectPool.java
 Mon Apr 30 22:00:13 2012
@@ -899,6 +899,7 @@ public class GenericObjectPool<T> extend
      * @return  An estimate of the number of threads currently blocked waiting
      *          for an object from the pool
      */
+    @Override
     public int getNumWaiters() {
         if (getBlockWhenExhausted()) {
             return idleObjects.getTakeQueueLength();

Modified: 
commons/proper/pool/trunk/src/main/java/org/apache/commons/pool2/impl/GenericObjectPoolMBean.java
URL: 
http://svn.apache.org/viewvc/commons/proper/pool/trunk/src/main/java/org/apache/commons/pool2/impl/GenericObjectPoolMBean.java?rev=1332433&r1=1332432&r2=1332433&view=diff
==============================================================================
--- 
commons/proper/pool/trunk/src/main/java/org/apache/commons/pool2/impl/GenericObjectPoolMBean.java
 (original)
+++ 
commons/proper/pool/trunk/src/main/java/org/apache/commons/pool2/impl/GenericObjectPoolMBean.java
 Mon Apr 30 22:00:13 2012
@@ -52,4 +52,5 @@ public interface GenericObjectPoolMBean 
     long getMaxBorrowWaitTimeMillis();
     String[] getSwallowedExceptions();
     String getCreationStackTrace();
+    int getNumWaiters();
 }


Reply via email to