Interface AgentBuilder.Listener
- All Known Implementing Classes:
AgentBuilder.Listener.Adapter, AgentBuilder.Listener.Compound, AgentBuilder.Listener.Filtering, AgentBuilder.Listener.ModuleReadEdgeCompleting, AgentBuilder.Listener.NoOp, AgentBuilder.Listener.StreamWriting, AgentBuilder.Listener.WithErrorsOnly, AgentBuilder.Listener.WithTransformationsOnly, AgentBuilder.RedefinitionStrategy.ResubmissionStrategy.Enabled.Resubmitter
- Enclosing interface:
AgentBuilder
public static interface AgentBuilder.Listener
A listener that is informed about events that occur during an instrumentation process.
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic classAn adapter for a listener where all methods are implemented as non-operational.static classA compound listener that allows to group several listeners in one instance.static classA listener that filters types with a given name from being logged.static classA listener that adds read-edges to any module of an instrumented class upon its transformation and opens the class's package to the module.static enumA no-op implementation of aAgentBuilder.Listener.static classA listener that writes events to aPrintStream.static classA listener that only delegates events if they are failed transformations.static classA listener that only delegates events if they are successful or failed transformations. -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final booleanIndicates that a transformed type is loaded. -
Method Summary
Modifier and TypeMethodDescriptionvoidonComplete(String typeName, ClassLoader classLoader, JavaModule module, boolean loaded) Invoked after a class was attempted to be loaded, independently of its treatment.voidonDiscovery(String typeName, ClassLoader classLoader, JavaModule module, boolean loaded) Invoked upon a type being supplied to a transformer.voidonError(String typeName, ClassLoader classLoader, JavaModule module, boolean loaded, Throwable throwable) Invoked when an error has occurred during transformation.voidonIgnored(TypeDescription typeDescription, ClassLoader classLoader, JavaModule module, boolean loaded) Invoked when a type is not transformed but ignored.voidonTransformation(TypeDescription typeDescription, ClassLoader classLoader, JavaModule module, boolean loaded, DynamicType dynamicType) Invoked prior to a successful transformation being applied.
-
Field Details
-
LOADED
static final boolean LOADEDIndicates that a transformed type is loaded.- See Also:
-
-
Method Details
-
onDiscovery
void onDiscovery(String typeName, @MaybeNull ClassLoader classLoader, @MaybeNull JavaModule module, boolean loaded) Invoked upon a type being supplied to a transformer.- Parameters:
typeName- The binary name of the instrumented type.classLoader- The class loader which is loading this type ornullif loaded by the boots loader.module- The instrumented type's module ornullif the current VM does not support modules.loaded-trueif the type is already loaded.
-
onTransformation
void onTransformation(TypeDescription typeDescription, @MaybeNull ClassLoader classLoader, @MaybeNull JavaModule module, boolean loaded, DynamicType dynamicType) Invoked prior to a successful transformation being applied.- Parameters:
typeDescription- The type that is being transformed.classLoader- The class loader which is loading this type ornullif loaded by the boots loader.module- The transformed type's module ornullif the current VM does not support modules.loaded-trueif the type is already loaded.dynamicType- The dynamic type that was created.
-
onIgnored
void onIgnored(TypeDescription typeDescription, @MaybeNull ClassLoader classLoader, @MaybeNull JavaModule module, boolean loaded) Invoked when a type is not transformed but ignored.- Parameters:
typeDescription- The type being ignored for transformation.classLoader- The class loader which is loading this type ornullif loaded by the boots loader.module- The ignored type's module ornullif the current VM does not support modules.loaded-trueif the type is already loaded.
-
onError
void onError(String typeName, @MaybeNull ClassLoader classLoader, @MaybeNull JavaModule module, boolean loaded, Throwable throwable) Invoked when an error has occurred during transformation.- Parameters:
typeName- The binary name of the instrumented type.classLoader- The class loader which is loading this type ornullif loaded by the boots loader.module- The instrumented type's module ornullif the current VM does not support modules.loaded-trueif the type is already loaded.throwable- The occurred error.
-
onComplete
void onComplete(String typeName, @MaybeNull ClassLoader classLoader, @MaybeNull JavaModule module, boolean loaded) Invoked after a class was attempted to be loaded, independently of its treatment.- Parameters:
typeName- The binary name of the instrumented type.classLoader- The class loader which is loading this type ornullif loaded by the boots loader.module- The instrumented type's module ornullif the current VM does not support modules.loaded-trueif the type is already loaded.
-