< prev index next >
src/java.management/share/classes/sun/management/MonitorInfoCompositeData.java
Print this page
*** 24,33 ****
--- 24,35 ----
*/
package sun.management;
import java.lang.management.MonitorInfo;
+ import java.util.HashMap;
+ import java.util.Map;
import javax.management.openmbean.CompositeType;
import javax.management.openmbean.CompositeData;
import javax.management.openmbean.CompositeDataSupport;
import javax.management.openmbean.OpenDataException;
import javax.management.openmbean.OpenType;
*** 52,86 ****
MonitorInfoCompositeData micd = new MonitorInfoCompositeData(mi);
return micd.getCompositeData();
}
protected CompositeData getCompositeData() {
- // CONTENTS OF THIS ARRAY MUST BE SYNCHRONIZED WITH
- // MONITOR_INFO_ATTRIBUTES!
-
- int len = MONITOR_INFO_ATTRIBUTES.length;
- Object[] values = new Object[len];
- CompositeData li = LockInfoCompositeData.toCompositeData(lock);
-
- for (int i = 0; i < len; i++) {
- String item = MONITOR_INFO_ATTRIBUTES[i];
- if (item.equals(LOCKED_STACK_FRAME)) {
StackTraceElement ste = lock.getLockedStackFrame();
! values[i] = (ste != null ? StackTraceElementCompositeData.
! toCompositeData(ste)
! : null);
! } else if (item.equals(LOCKED_STACK_DEPTH)) {
! values[i] = lock.getLockedStackDepth();
! } else {
! values[i] = li.get(item);
! }
! }
try {
! return new CompositeDataSupport(MONITOR_INFO_COMPOSITE_TYPE,
! MONITOR_INFO_ATTRIBUTES,
! values);
} catch (OpenDataException e) {
// Should never reach here
throw new AssertionError(e);
}
}
--- 54,75 ----
MonitorInfoCompositeData micd = new MonitorInfoCompositeData(mi);
return micd.getCompositeData();
}
protected CompositeData getCompositeData() {
StackTraceElement ste = lock.getLockedStackFrame();
! CompositeData steCData = ste != null ? StackTraceElementCompositeData.toCompositeData(ste)
! : null;
! // values may be null; can't use Map.of
! Map<String,Object> items = new HashMap<>();
! items.put(CLASS_NAME, lock.getClassName());
! items.put(IDENTITY_HASH_CODE, lock.getIdentityHashCode());
! items.put(LOCKED_STACK_FRAME, steCData);
! items.put(LOCKED_STACK_DEPTH, lock.getLockedStackDepth());
try {
! return new CompositeDataSupport(MONITOR_INFO_COMPOSITE_TYPE, items);
} catch (OpenDataException e) {
// Should never reach here
throw new AssertionError(e);
}
}
*** 124,137 ****
static CompositeType v6CompositeType() {
return V6_COMPOSITE_TYPE;
}
- static CompositeType compositeType() {
- return MONITOR_INFO_COMPOSITE_TYPE;
- }
-
public static String getClassName(CompositeData cd) {
return getString(cd, CLASS_NAME);
}
public static int getIdentityHashCode(CompositeData cd) {
--- 113,122 ----
< prev index next >