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.