Package net.bytebuddy.agent.builder
Class AgentBuilder.Listener.Compound
java.lang.Object
net.bytebuddy.agent.builder.AgentBuilder.Listener.Compound
- All Implemented Interfaces:
AgentBuilder.Listener
- Enclosing interface:
- AgentBuilder.Listener
@Enhance
public static class AgentBuilder.Listener.Compound
extends Object
implements AgentBuilder.Listener
A compound listener that allows to group several listeners in one instance.
-
Nested Class Summary
Nested classes/interfaces inherited from interface net.bytebuddy.agent.builder.AgentBuilder.Listener
AgentBuilder.Listener.Adapter, AgentBuilder.Listener.Compound, AgentBuilder.Listener.Filtering, AgentBuilder.Listener.ModuleReadEdgeCompleting, AgentBuilder.Listener.NoOp, AgentBuilder.Listener.StreamWriting, AgentBuilder.Listener.WithErrorsOnly, AgentBuilder.Listener.WithTransformationsOnly
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final List<AgentBuilder.Listener>
The listeners that are represented by this compound listener in their application order.Fields inherited from interface net.bytebuddy.agent.builder.AgentBuilder.Listener
LOADED
-
Constructor Summary
ConstructorsConstructorDescriptionCompound
(List<? extends AgentBuilder.Listener> listeners) Creates a new compound listener.Compound
(AgentBuilder.Listener... listener) Creates a new compound listener. -
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
-
listeners
The listeners that are represented by this compound listener in their application order.
-
-
Constructor Details
-
Compound
Creates a new compound listener.- Parameters:
listener
- The listeners to apply in their application order.
-
Compound
Creates a new compound listener.- Parameters:
listeners
- The listeners to apply in their application order.
-
-
Method Details
-
onDiscovery
public void onDiscovery(String typeName, @MaybeNull ClassLoader classLoader, @MaybeNull JavaModule module, boolean loaded) Invoked upon a type being supplied to a transformer.- Specified by:
onDiscovery
in interfaceAgentBuilder.Listener
- 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
public void onTransformation(TypeDescription typeDescription, @MaybeNull ClassLoader classLoader, @MaybeNull JavaModule module, boolean loaded, DynamicType dynamicType) Invoked prior to a successful transformation being applied.- Specified by:
onTransformation
in interfaceAgentBuilder.Listener
- 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
public void onIgnored(TypeDescription typeDescription, @MaybeNull ClassLoader classLoader, @MaybeNull JavaModule module, boolean loaded) Invoked when a type is not transformed but ignored.- Specified by:
onIgnored
in interfaceAgentBuilder.Listener
- 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
public void onError(String typeName, @MaybeNull ClassLoader classLoader, @MaybeNull JavaModule module, boolean loaded, Throwable throwable) Invoked when an error has occurred during transformation.- Specified by:
onError
in interfaceAgentBuilder.Listener
- 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
public 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.- Specified by:
onComplete
in interfaceAgentBuilder.Listener
- 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.
-