APIdia Launch Partner
Top Description Fields Constructors Methods
jdk.jfr.internal.tracing

pack-priv final Class Instrumentation

extends Object
Class Inheritance
Imports
java.lang.classfile.ClassBuilder, .ClassElement, .ClassFile, .ClassFile.ClassHierarchyResolverOption, .ClassFile.Option, .ClassHierarchyResolver, .ClassModel, .MethodModel, .MethodTransform, java.util.ArrayList, .LinkedHashMap, .List, .Map, jdk.jfr.internal.LogLevel, .LogTag, .Logger

Class that adds bytecode instrumentation for a class.

Field Summary

Modifier and TypeField and Description
private final byte[]
private final ClassLoader
private final String
private final Map<String, Method>

Constructor Summary

AccessConstructor and Description
public
Instrumentation(ClassLoader classLoader, String internalClassName, byte[] bytecode)

Method Summary

Modifier and TypeMethod and Description
public void
addMethod(long methodId, String name, String signature, int modification)

public byte[]
public List<Method>
private boolean
private boolean
modifyMethod(ClassModel classModel, ClassBuilder classBuilder, MethodModel methodModel, Method method)

private ClassHierarchyResolver
private ClassFile.Option
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

bytecodeback to summary
private final byte[] bytecode
classLoaderback to summary
private final ClassLoader classLoader
classNameback to summary
private final String className
modificationMapback to summary
private final Map<String, Method> modificationMap

Constructor Detail

Instrumentationback to summary
public Instrumentation(ClassLoader classLoader, String internalClassName, byte[] bytecode)

Method Detail

addMethodback to summary
public void addMethod(long methodId, String name, String signature, int modification)
generateBytecodeback to summary
public byte[] generateBytecode()
getMethodsback to summary
public List<Method> getMethods()
modifyClassElementback to summary
private boolean modifyClassElement(ClassModel classModel, ClassBuilder classBuilder, ClassElement ce)
modifyMethodback to summary
private boolean modifyMethod(ClassModel classModel, ClassBuilder classBuilder, MethodModel methodModel, Method method)
resolverback to summary
private ClassHierarchyResolver resolver()
resolverOptionback to summary
private ClassFile.Option resolverOption()