You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by od...@apache.org on 2009/10/16 14:27:17 UTC
svn commit: r825865 - in
/harmony/enhanced/classlib/trunk/modules/lang-management:
make/findbugs-exclude-filter.xml
src/main/java/java/lang/management/MemoryType.java
src/main/java/org/apache/harmony/lang/management/ManagementUtils.java
Author: odeakin
Date: Fri Oct 16 12:27:17 2009
New Revision: 825865
URL: http://svn.apache.org/viewvc?rev=825865&view=rev
Log:
Commit patch for HARMONY-6356 ([classlib][lang-managment] Improvements to lang-management classes from findbugs)
Added:
harmony/enhanced/classlib/trunk/modules/lang-management/make/findbugs-exclude-filter.xml (with props)
Modified:
harmony/enhanced/classlib/trunk/modules/lang-management/src/main/java/java/lang/management/MemoryType.java
harmony/enhanced/classlib/trunk/modules/lang-management/src/main/java/org/apache/harmony/lang/management/ManagementUtils.java
Added: harmony/enhanced/classlib/trunk/modules/lang-management/make/findbugs-exclude-filter.xml
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/lang-management/make/findbugs-exclude-filter.xml?rev=825865&view=auto
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/lang-management/make/findbugs-exclude-filter.xml (added)
+++ harmony/enhanced/classlib/trunk/modules/lang-management/make/findbugs-exclude-filter.xml Fri Oct 16 12:27:17 2009
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+ <!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version
+ 2.0 (the "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0 Unless required by
+ applicable law or agreed to in writing, software distributed under the
+ License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
+ CONDITIONS OF ANY KIND, either express or implied. See the License for
+ the specific language governing permissions and limitations under the
+ License.
+ -->
+
+ <!-- Exclusion filter for running FindBugs against Apache Harmony -->
+
+ <!--
+ Format and code information is available here
+ http://findbugs.sourceforge.net/manual/filter.html
+ -->
+<FindBugsFilter>
+ <!-- RI exposes mutable StackTraceElement[] object also -->
+ <Match>
+ <Class name="java.lang.management.ThreadInfo" />
+ <Method name="getStackTrace" />
+ <Bug pattern="EI_EXPOSE_REP" />
+ </Match>
+</FindBugsFilter>
Propchange: harmony/enhanced/classlib/trunk/modules/lang-management/make/findbugs-exclude-filter.xml
------------------------------------------------------------------------------
svn:eol-style = native
Modified: harmony/enhanced/classlib/trunk/modules/lang-management/src/main/java/java/lang/management/MemoryType.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/lang-management/src/main/java/java/lang/management/MemoryType.java?rev=825865&r1=825864&r2=825865&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/lang-management/src/main/java/java/lang/management/MemoryType.java (original)
+++ harmony/enhanced/classlib/trunk/modules/lang-management/src/main/java/java/lang/management/MemoryType.java Fri Oct 16 12:27:17 2009
@@ -30,25 +30,17 @@
* Heap memory type.
* </p>
*/
- HEAP,
+ HEAP {
+ @Override
+ public String toString() { return "Heap memory"; }
+ },
/**
* <p>
* Non-heap memory type.
* </p>
*/
- NON_HEAP;
-
- @Override
- public String toString() {
- String result = null;
- switch (this) {
- case HEAP:
- result = "Heap memory";
- break;
- case NON_HEAP:
- result = "Non-heap memory";
- break;
- }
- return result;
- }
+ NON_HEAP {
+ @Override
+ public String toString() { return "Non-heap memory"; }
+ };
}
Modified: harmony/enhanced/classlib/trunk/modules/lang-management/src/main/java/org/apache/harmony/lang/management/ManagementUtils.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/lang-management/src/main/java/org/apache/harmony/lang/management/ManagementUtils.java?rev=825865&r1=825864&r2=825865&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/lang-management/src/main/java/org/apache/harmony/lang/management/ManagementUtils.java (original)
+++ harmony/enhanced/classlib/trunk/modules/lang-management/src/main/java/org/apache/harmony/lang/management/ManagementUtils.java Fri Oct 16 12:27:17 2009
@@ -853,9 +853,10 @@
CompositeData result = null;
String[] names = { "init", "used", "committed", "max" };
- Object[] values = { new Long(usage.getInit()),
- new Long(usage.getUsed()), new Long(usage.getCommitted()),
- new Long(usage.getMax()) };
+ Object[] values = { Long.valueOf(usage.getInit()),
+ Long.valueOf(usage.getUsed()),
+ Long.valueOf(usage.getCommitted()),
+ Long.valueOf(usage.getMax()) };
CompositeType cType = getMemoryUsageCompositeType();
try {
result = new CompositeDataSupport(cType, names, values);
@@ -905,9 +906,9 @@
CompositeData result = null;
String[] names = { "poolName", "usage", "count" };
- Object[] values = { new String(info.getPoolName()),
+ Object[] values = { info.getPoolName(),
toMemoryUsageCompositeData(info.getUsage()),
- new Long(info.getCount()) };
+ Long.valueOf(info.getCount()) };
CompositeType cType = getMemoryNotificationInfoCompositeType();
try {
result = new CompositeDataSupport(cType, names, values);
@@ -967,20 +968,19 @@
"waitedCount", "waitedTime", "lockName", "lockOwnerId",
"lockOwnerName", "stackTrace" };
Object[] values = {
- new Long(info.getThreadId()),
- new String(info.getThreadName()),
- new String(info.getThreadState().name()),
- new Boolean(info.isSuspended()),
- new Boolean(info.isInNative()),
- new Long(info.getBlockedCount()),
- new Long(info.getBlockedTime()),
- new Long(info.getWaitedCount()),
- new Long(info.getWaitedTime()),
- info.getLockName() != null ? new String(info.getLockName())
- : null,
- new Long(info.getLockOwnerId()),
- info.getLockOwnerName() != null ? new String(info
- .getLockOwnerName()) : null, stArray };
+ Long.valueOf(info.getThreadId()),
+ info.getThreadName(),
+ info.getThreadState().name(),
+ Boolean.valueOf(info.isSuspended()),
+ Boolean.valueOf(info.isInNative()),
+ Long.valueOf(info.getBlockedCount()),
+ Long.valueOf(info.getBlockedTime()),
+ Long.valueOf(info.getWaitedCount()),
+ Long.valueOf(info.getWaitedTime()),
+ info.getLockName(),
+ Long.valueOf(info.getLockOwnerId()),
+ info.getLockOwnerName(),
+ stArray };
CompositeType cType = getThreadInfoCompositeType();
try {
result = new CompositeDataSupport(cType, names, values);
@@ -1011,12 +1011,12 @@
// A file name of null is permissable
String fileName = element.getFileName();
- String fileNameValue = (fileName == null) ? null : new String(fileName);
- Object[] values = { new String(element.getClassName()),
- new String(element.getMethodName()), fileNameValue,
- new Integer(element.getLineNumber()),
- new Boolean(element.isNativeMethod()) };
+ Object[] values = { element.getClassName(),
+ element.getMethodName(),
+ fileName,
+ Integer.valueOf(element.getLineNumber()),
+ Boolean.valueOf(element.isNativeMethod()) };
CompositeType cType = getStackTraceElementCompositeType();
try {
result = new CompositeDataSupport(cType, names, values);
@@ -1401,12 +1401,11 @@
// Take each entry out of the input propsMap, put it into a new
// instance of CompositeData and put into the TabularType
- Set<String> keys = propsMap.keySet();
- for (Iterator<String> iter = keys.iterator(); iter.hasNext();) {
- String propKey = iter.next();
- String propVal = propsMap.get(propKey);
+ Set<Map.Entry<String,String>> entrySet = propsMap.entrySet();
+ for (Iterator<Map.Entry<String, String>> iter = entrySet.iterator(); iter.hasNext();) {
+ Map.Entry<String,String> entry = iter.next();
result.put(new CompositeDataSupport(rowType, rtItemNames,
- new String[] { propKey, propVal }));
+ new String[] { entry.getKey(), entry.getValue() }));
}// end for
} catch (OpenDataException e) {
if (ManagementUtils.VERBOSE_MODE) {