Package net.bytebuddy.agent.builder
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 class
An adapter for a listener where all methods are implemented as non-operational.static class
A compound listener that allows to group several listeners in one instance.static class
A listener that filters types with a given name from being logged.static class
A 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 enum
A no-op implementation of aAgentBuilder.Listener
.static class
A listener that writes events to aPrintStream
.static class
A listener that only delegates events if they are failed transformations.static class
A listener that only delegates events if they are successful or failed transformations. -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final boolean
Indicates that a transformed type is loaded. -
Method Summary
Modifier and TypeMethodDescriptionvoid
onComplete
(String typeName, ClassLoader classLoader, JavaModule module, boolean loaded) Invoked after a class was attempted to be loaded, independently of its treatment.void
onDiscovery
(String typeName, ClassLoader classLoader, JavaModule module, boolean loaded) Invoked upon a type being supplied to a transformer.void
onError
(String typeName, ClassLoader classLoader, JavaModule module, boolean loaded, Throwable throwable) Invoked when an error has occurred during transformation.void
onIgnored
(TypeDescription typeDescription, ClassLoader classLoader, JavaModule module, boolean loaded) Invoked when a type is not transformed but ignored.void
onTransformation
(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 ornull
if loaded by the boots loader.module
- The instrumented type's module ornull
if the current VM does not support modules.loaded
-true
if 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 ornull
if loaded by the boots loader.module
- The transformed type's module ornull
if the current VM does not support modules.loaded
-true
if 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 ornull
if loaded by the boots loader.module
- The ignored type's module ornull
if the current VM does not support modules.loaded
-true
if 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 ornull
if loaded by the boots loader.module
- The instrumented type's module ornull
if the current VM does not support modules.loaded
-true
if 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 ornull
if loaded by the boots loader.module
- The instrumented type's module ornull
if the current VM does not support modules.loaded
-true
if the type is already loaded.
-