< prev index next >
core/org.openjdk.jmc.flightrecorder/src/main/java/org/openjdk/jmc/flightrecorder/jdk/JdkAttributes.java
Print this page
@@ -710,10 +710,14 @@
private static final IAttribute<IMCType> CLASS_DEFINING_CLASSLOADER_V0 = attr("definingClassLoader", //$NON-NLS-1$
Messages.getString(Messages.ATTR_CLASS_DEFINING_CLASSLOADER), CLASS);
private static final IAttribute<IMCType> CLASS_INITIATING_CLASSLOADER_V0 = attr("initiatingClassLoader", //$NON-NLS-1$
Messages.getString(Messages.ATTR_CLASS_INITIATING_CLASSLOADER), CLASS);
+ private static final IAttribute<IMCType> PARENT_CLASSLOADER_V0 = attr("parentClassLoader", // $NON-NLS-1$
+ Messages.getString(Messages.ATTR_PARENT_CLASSLOADER), CLASS);
+ private static final IAttribute<IMCType> CLASSLOADER_V0 = attr("classLoader", // $NON-NLS-1$
+ Messages.getString(Messages.ATTR_CLASSLOADER), CLASS);
public static final IAttribute<IMCClassLoader> CLASS_DEFINING_CLASSLOADER = Attribute
.canonicalize(new Attribute<IMCClassLoader>("definingClassLoader", //$NON-NLS-1$
Messages.getString(Messages.ATTR_CLASS_DEFINING_CLASSLOADER), null, CLASS_LOADER) {
@Override
@@ -749,10 +753,48 @@
};
}
return null;
}
});
+ public static final IAttribute<IMCClassLoader> PARENT_CLASSLOADER = Attribute
+ .canonicalize(new Attribute<IMCClassLoader>("parentClassLoader", //$NON-NLS-1$
+ Messages.getString(Messages.ATTR_PARENT_CLASSLOADER), null, CLASS_LOADER) {
+ @Override
+ public <U> IMemberAccessor<IMCClassLoader, U> customAccessor(IType<U> type) {
+ // V1 is handled by the standard accessor
+ final IMemberAccessor<IMCType, U> accessorV0 = PARENT_CLASSLOADER_V0.getAccessor(type);
+ if (accessorV0 != null) {
+ return new IMemberAccessor<IMCClassLoader, U>() {
+ @Override
+ public IMCClassLoader getMember(U i) {
+ IMCType type = accessorV0.getMember(i);
+ return new MCClassLoader(type, null);
+ }
+ };
+ }
+ return null;
+ }
+ });
+ public static final IAttribute<IMCClassLoader> CLASSLOADER = Attribute
+ .canonicalize(new Attribute<IMCClassLoader>("classLoader", //$NON-NLS-1$
+ Messages.getString(Messages.ATTR_CLASSLOADER), null, CLASS_LOADER) {
+ @Override
+ public <U> IMemberAccessor<IMCClassLoader, U> customAccessor(IType<U> type) {
+ // V1 is handled by the standard accessor
+ final IMemberAccessor<IMCType, U> accessorV0 = CLASSLOADER_V0.getAccessor(type);
+ if (accessorV0 != null) {
+ return new IMemberAccessor<IMCClassLoader, U>() {
+ @Override
+ public IMCClassLoader getMember(U i) {
+ IMCType type = accessorV0.getMember(i);
+ return new MCClassLoader(type, null);
+ }
+ };
+ }
+ return null;
+ }
+ });
public static final IAttribute<String> CLASS_DEFINING_CLASSLOADER_STRING = Attribute
.canonicalize(new Attribute<String>("defininingClassLoader.string", //$NON-NLS-1$
Messages.getString(Messages.ATTR_CLASS_DEFINING_CLASSLOADER), null, PLAIN_TEXT) {
@Override
public <U> IMemberAccessor<String, U> customAccessor(IType<U> type) {
@@ -779,15 +821,62 @@
return cl == null ? null : FormatToolkit.getHumanReadable(cl);
}
};
}
});
+ public static final IAttribute<String> PARENT_CLASSLOADER_STRING = Attribute
+ .canonicalize(new Attribute<String>("parentClassLoader.string", //$NON-NLS-1$
+ Messages.getString(Messages.ATTR_PARENT_CLASSLOADER), null, PLAIN_TEXT) {
+ @Override
+ public <U> IMemberAccessor<String, U> customAccessor(IType<U> type) {
+ final IMemberAccessor<IMCClassLoader, U> accessor = PARENT_CLASSLOADER.getAccessor(type);
+ return accessor == null ? null : new IMemberAccessor<String, U>() {
+ @Override
+ public String getMember(U i) {
+ IMCClassLoader cl = accessor.getMember(i);
+ return cl == null ? null : FormatToolkit.getHumanReadable(cl);
+ }
+ };
+ }
+ });
+
+ public static final IAttribute<String> CLASSLOADER_STRING = Attribute
+ .canonicalize(new Attribute<String>("classLoader.string", //$NON-NLS-1$
+ Messages.getString(Messages.ATTR_CLASSLOADER), null, PLAIN_TEXT) {
+ @Override
+ public <U> IMemberAccessor<String, U> customAccessor(IType<U> type) {
+ final IMemberAccessor<IMCClassLoader, U> accessor = CLASSLOADER.getAccessor(type);
+ return accessor == null ? null : new IMemberAccessor<String, U>() {
+ @Override
+ public String getMember(U i) {
+ IMCClassLoader cl = accessor.getMember(i);
+ return cl == null ? null : FormatToolkit.getHumanReadable(cl);
+ }
+ };
+ }
+ });
public static final IAttribute<IMCType> CLASS_LOADED = attr("loadedClass", //$NON-NLS-1$
Messages.getString(Messages.ATTR_CLASS_LOADED), CLASS);
public static final IAttribute<IMCType> CLASS_UNLOADED = attr("unloadedClass", //$NON-NLS-1$
Messages.getString(Messages.ATTR_CLASS_UNLOADED), CLASS);
+ public static final IAttribute<IMCType> CLASS_DEFINED = attr("definedClass", // $NON-NLS-1$
+ Messages.getString(Messages.ATTR_CLASS_DEFINED), CLASS);
+ public static final IAttribute<IQuantity> ANONYMOUS_BLOCK_SIZE = attr("anonymousBlockSize", // $NON-NLS-1$
+ Messages.getString(Messages.ATTR_ANONYMOUS_BLOCK_SIZE), MEMORY);
+ public static final IAttribute<IQuantity> ANONYMOUS_CHUNK_SIZE = attr("anonymousChunkSize", // $NON-NLS-1$
+ Messages.getString(Messages.ATTR_ANONYMOUS_CHUNK_SIZE), MEMORY);
+ public static final IAttribute<IQuantity> ANONYMOUS_CLASS_COUNT = attr("anonymousClassCount", // $NON-NLS-1$
+ Messages.getString(Messages.ATTR_ANONYMOUS_CLASS_COUNT), NUMBER);
+ public static final IAttribute<IQuantity> BLOCK_SIZE = attr("blockSize", // $NON-NLS-1$
+ Messages.getString(Messages.ATTR_BLOCK_SIZE), MEMORY);
+ public static final IAttribute<IQuantity> CHUNK_SIZE = attr("chunkSize", // $NON-NLS-1$
+ Messages.getString(Messages.ATTR_CHUNK_SIZE), MEMORY);
+ public static final IAttribute<IQuantity> CLASS_COUNT = attr("classCount", // $NON-NLS-1$
+ Messages.getString(Messages.ATTR_CLASS_COUNT), NUMBER);
+ public static final IAttribute<IQuantity> CLASS_LOADER_DATA = attr("classLoaderData", // $NON-NLS-1$
+ Messages.getString(Messages.ATTR_CLASSLOADER_DATA), ADDRESS);
public static final IAttribute<IQuantity> COMPILER_COMPILATION_ID = attr("compileId", //$NON-NLS-1$
Messages.getString(Messages.ATTR_COMPILER_COMPILATION_ID), NUMBER);
public static final IAttribute<IQuantity> COMPILER_CODE_SIZE = attr("codeSize", //$NON-NLS-1$
Messages.getString(Messages.ATTR_COMPILER_CODE_SIZE), MEMORY);
< prev index next >