Author: curtisr7
Date: Thu Oct 28 20:13:19 2010
New Revision: 1028457

URL: http://svn.apache.org/viewvc?rev=1028457&view=rev
Log:
OPENJPA-1844: Remove JConsole plugin from trunk and refactor some of 
DataCacheMBean.

Removed:
    
openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/instrumentation/jconsole/
    
openjpa/trunk/openjpa-kernel/src/main/resources/META-INF/services/com.sun.tools.jconsole.JConsolePlugin
Modified:
    
openjpa/trunk/openjpa-integration/jmx/src/test/java/org/apache/openjpa/integration/jmx/TestJMXPlatformMBeans.java
    openjpa/trunk/openjpa-kernel/pom.xml
    
openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/datacache/CacheStatistics.java
    
openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/datacache/CacheStatisticsImpl.java
    
openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/instrumentation/AbstractDataCacheInstrument.java
    
openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/instrumentation/DataCacheInstrument.java

Modified: 
openjpa/trunk/openjpa-integration/jmx/src/test/java/org/apache/openjpa/integration/jmx/TestJMXPlatformMBeans.java
URL: 
http://svn.apache.org/viewvc/openjpa/trunk/openjpa-integration/jmx/src/test/java/org/apache/openjpa/integration/jmx/TestJMXPlatformMBeans.java?rev=1028457&r1=1028456&r2=1028457&view=diff
==============================================================================
--- 
openjpa/trunk/openjpa-integration/jmx/src/test/java/org/apache/openjpa/integration/jmx/TestJMXPlatformMBeans.java
 (original)
+++ 
openjpa/trunk/openjpa-integration/jmx/src/test/java/org/apache/openjpa/integration/jmx/TestJMXPlatformMBeans.java
 Thu Oct 28 20:13:19 2010
@@ -20,6 +20,7 @@ package org.apache.openjpa.integration.j
 
 import java.lang.management.ManagementFactory;
 import java.util.List;
+import java.util.Map;
 import java.util.Random;
 import java.util.Set;
 import java.util.concurrent.Callable;
@@ -32,7 +33,6 @@ import javax.management.MBeanServer;
 import javax.management.ObjectName;
 import javax.persistence.Query;
 
-import org.apache.openjpa.datacache.CacheStatistics;
 import org.apache.openjpa.instrumentation.DataCacheInstrument;
 import org.apache.openjpa.instrumentation.InstrumentationManager;
 import org.apache.openjpa.instrumentation.PreparedQueryCacheInstrument;
@@ -88,7 +88,7 @@ public class TestJMXPlatformMBeans exten
         assertTrue(dci.getHitCount() > 0);
         assertTrue(dci.getHitCount(clsName) > 0);
         assertTrue(dci.getWriteCount() > 0);
-        assertTrue(dci.getCacheStatistics().classNames().contains(clsName));
+        assertTrue(dci.getCacheStatistics().keySet().contains(clsName));
         // Thread out to do out-of-band MBean-based validation.  This could
         // have been done on the same thread, but threading out makes for a
         // more realistic test.
@@ -274,10 +274,10 @@ public class TestJMXPlatformMBeans exten
                 assertTrue(mbean.getReadCount(clsName) > 0);
                 assertTrue(mbean.getWriteCount(clsName) > 0);
                 
-                CacheStatistics stats = mbean.getCacheStatistics();
+                Map<String,long[]> stats = mbean.getCacheStatistics();
                 assertNotNull(stats);
                 // Comment out classNames portion of the test which is 
currently broken. 
-                 Set<String> classNames = stats.classNames();
+                 Set<String> classNames = stats.keySet();
                  assertNotNull(classNames);
                  assertTrue(classNames.contains(clsName));
                 

Modified: openjpa/trunk/openjpa-kernel/pom.xml
URL: 
http://svn.apache.org/viewvc/openjpa/trunk/openjpa-kernel/pom.xml?rev=1028457&r1=1028456&r2=1028457&view=diff
==============================================================================
--- openjpa/trunk/openjpa-kernel/pom.xml (original)
+++ openjpa/trunk/openjpa-kernel/pom.xml Thu Oct 28 20:13:19 2010
@@ -36,11 +36,6 @@
     <name>OpenJPA Kernel</name>
     <description>OpenJPA Kernel</description>
 
-    <properties>
-        <!-- default location of jconsole.jar on most platforms -->
-        <jconsoleHome>${java.home}/../lib</jconsoleHome>
-    </properties>
-
     <dependencies>
         <dependency>
             <groupId>org.apache.openjpa</groupId>
@@ -69,33 +64,9 @@
             <groupId>ant</groupId>
             <artifactId>ant</artifactId>
             <scope>provided</scope>
-        </dependency>
-        <dependency>
-            <groupId>sun.jconsole</groupId>
-            <artifactId>jconsole</artifactId>
-            <version>1.6.0</version>
-            <scope>system</scope>
-            <systemPath>${jconsoleHome}/jconsole.jar</systemPath>
-        </dependency>
-        
+        </dependency>        
     </dependencies>
 
-    <profiles>
-        <profile>
-            <id>macosx</id>
-            <activation>
-                <activeByDefault>false</activeByDefault>
-                <os>
-                    <family>mac</family>
-                </os>
-            </activation>
-            <properties>
-                <!-- location of jconsole.jar on MacOSX -->
-                <jconsoleHome>${java.home}/lib</jconsoleHome>
-            </properties>
-        </profile>
-    </profiles>
-
     <build>
         <plugins>
             <plugin>

Modified: 
openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/datacache/CacheStatistics.java
URL: 
http://svn.apache.org/viewvc/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/datacache/CacheStatistics.java?rev=1028457&r1=1028456&r2=1028457&view=diff
==============================================================================
--- 
openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/datacache/CacheStatistics.java
 (original)
+++ 
openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/datacache/CacheStatistics.java
 Thu Oct 28 20:13:19 2010
@@ -169,4 +169,6 @@ public interface CacheStatistics extends
         */
     public Set<String> classNames();
     
+    public Map<String, long[]> toMap();
+    
 }

Modified: 
openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/datacache/CacheStatisticsImpl.java
URL: 
http://svn.apache.org/viewvc/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/datacache/CacheStatisticsImpl.java?rev=1028457&r1=1028456&r2=1028457&view=diff
==============================================================================
--- 
openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/datacache/CacheStatisticsImpl.java
 (original)
+++ 
openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/datacache/CacheStatisticsImpl.java
 Thu Oct 28 20:13:19 2010
@@ -22,6 +22,7 @@ import java.util.Date;
 import java.util.HashMap;
 import java.util.Map;
 import java.util.Set;
+import java.util.Map.Entry;
 
 import org.apache.openjpa.util.OpenJPAId;
 
@@ -31,10 +32,10 @@ import org.apache.openjpa.util.OpenJPAId
 public class CacheStatisticsImpl implements CacheStatisticsSPI {
     private static final long serialVersionUID = 9014495759588003166L;
     private static final int ARRAY_SIZE = 3;
-    private long[] astat = new long[ARRAY_SIZE];
+    private long[] totalStat = new long[ARRAY_SIZE];
     private long[] stat = new long[ARRAY_SIZE];
     private Map<String, long[]> stats = new HashMap<String, long[]>();
-    private Map<String, long[]> astats = new HashMap<String, long[]>();
+    private Map<String, long[]> totalStats = new HashMap<String, long[]>();
 
     private Date start = new Date();
     private Date since = new Date();
@@ -57,15 +58,15 @@ public class CacheStatisticsImpl impleme
     }
 
     public long getTotalReadCount() {
-        return astat[READ];
+        return totalStat[READ];
     }
 
     public long getTotalHitCount() {
-        return astat[HIT];
+        return totalStat[HIT];
     }
 
     public long getTotalWriteCount() {
-        return astat[WRITE];
+        return totalStat[WRITE];
     }
 
     public long getReadCount(Class<?> c) {
@@ -96,7 +97,7 @@ public class CacheStatisticsImpl impleme
     }
 
     public long getTotalReadCount(String str) {
-        return getCount(astats, str, READ);        
+        return getCount(totalStats, str, READ);        
     }
     
     public long getTotalHitCount(Class<?> c) {
@@ -104,15 +105,15 @@ public class CacheStatisticsImpl impleme
     }
     
     public long getTotalHitCount(String str) {
-        return getCount(astats, str, HIT);
+        return getCount(totalStats, str, HIT);
     }
 
     public long getTotalWriteCount(Class<?> c) {
-        return getCount(astats, c.getName(), WRITE);
+        return getCount(totalStats, c.getName(), WRITE);
     }
     
     public long getTotalWriteCount(String str) {
-        return getCount(astats, str, WRITE);
+        return getCount(totalStats, str, WRITE);
     }
 
     public Date since() {
@@ -134,7 +135,15 @@ public class CacheStatisticsImpl impleme
     }
 
     public Set<String> classNames() {
-        return astats.keySet();
+        return totalStats.keySet();
+    }
+    
+    public Map<String, long[]> toMap() {
+        Map<String, long[]> res = new HashMap<String, long[]>();
+        for(Entry<String, long[]> s  : stats.entrySet()){
+            res.put(s.getKey(), s.getValue());
+        }
+        return res;
     }
     
     /**
@@ -191,9 +200,9 @@ public class CacheStatisticsImpl impleme
      */
     private void addSample(String c, int index) {
         stat[index]++;
-        astat[index]++;
+        totalStat[index]++;
         addSample(stats, c, index);
-        addSample(astats, c, index);
+        addSample(totalStats, c, index);
     }
 
     private void addSample(Map<String, long[]> target, String c, int index) {

Modified: 
openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/instrumentation/AbstractDataCacheInstrument.java
URL: 
http://svn.apache.org/viewvc/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/instrumentation/AbstractDataCacheInstrument.java?rev=1028457&r1=1028456&r2=1028457&view=diff
==============================================================================
--- 
openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/instrumentation/AbstractDataCacheInstrument.java
 (original)
+++ 
openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/instrumentation/AbstractDataCacheInstrument.java
 Thu Oct 28 20:13:19 2010
@@ -218,8 +218,9 @@ public abstract class AbstractDataCacheI
         CacheStatisticsSPI stats = (CacheStatisticsSPI) _dc.getStatistics();
         return stats.isEnabled();
     }
-    public CacheStatistics getCacheStatistics() {
-        return _dc.getStatistics();
+    
+    public Map<String, long[]> getCacheStatistics() {
+        return _dc.getStatistics().toMap();
     }
     public void clear() {
         _dc.clear();

Modified: 
openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/instrumentation/DataCacheInstrument.java
URL: 
http://svn.apache.org/viewvc/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/instrumentation/DataCacheInstrument.java?rev=1028457&r1=1028456&r2=1028457&view=diff
==============================================================================
--- 
openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/instrumentation/DataCacheInstrument.java
 (original)
+++ 
openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/instrumentation/DataCacheInstrument.java
 Thu Oct 28 20:13:19 2010
@@ -132,8 +132,11 @@ public interface DataCacheInstrument {
     
     /**
      * Returns the CacheStatistics for the cache.
+     * The format for this map is:
+     *  Type(String) => Enabled(Boolean),Hit(Long),Read(Long),Write(Long)
      */
-    public CacheStatistics getCacheStatistics();
+    public Map<String, long[]> getCacheStatistics();
+    
     
     /**
      * Clears all data from the DataCache.


Reply via email to