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 java.lang.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
Fields Modifier and Type Field Description private java.util.List<AgentBuilder.Listener>listenersThe 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
Constructors Constructor Description Compound(java.util.List<? extends AgentBuilder.Listener> listeners)Creates a new compound listener.Compound(AgentBuilder.Listener... listener)Creates a new compound listener.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidonComplete(java.lang.String typeName, java.lang.ClassLoader classLoader, JavaModule module, boolean loaded)Invoked after a class was attempted to be loaded, independently of its treatment.voidonDiscovery(java.lang.String typeName, java.lang.ClassLoader classLoader, JavaModule module, boolean loaded)Invoked upon a type being supplied to a transformer.voidonError(java.lang.String typeName, java.lang.ClassLoader classLoader, JavaModule module, boolean loaded, java.lang.Throwable throwable)Invoked when an error has occurred during transformation.voidonIgnored(TypeDescription typeDescription, java.lang.ClassLoader classLoader, JavaModule module, boolean loaded)Invoked when a type is not transformed but ignored.voidonTransformation(TypeDescription typeDescription, java.lang.ClassLoader classLoader, JavaModule module, boolean loaded, DynamicType dynamicType)Invoked prior to a successful transformation being applied.
-
-
-
Field Detail
-
listeners
private final java.util.List<AgentBuilder.Listener> listeners
The listeners that are represented by this compound listener in their application order.
-
-
Constructor Detail
-
Compound
public Compound(AgentBuilder.Listener... listener)
Creates a new compound listener.- Parameters:
listener- The listeners to apply in their application order.
-
Compound
public Compound(java.util.List<? extends AgentBuilder.Listener> listeners)
Creates a new compound listener.- Parameters:
listeners- The listeners to apply in their application order.
-
-
Method Detail
-
onDiscovery
public void onDiscovery(java.lang.String typeName, @MaybeNull java.lang.ClassLoader classLoader, @MaybeNull JavaModule module, boolean loaded)Invoked upon a type being supplied to a transformer.- Specified by:
onDiscoveryin interfaceAgentBuilder.Listener- 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
public void onTransformation(TypeDescription typeDescription, @MaybeNull java.lang.ClassLoader classLoader, @MaybeNull JavaModule module, boolean loaded, DynamicType dynamicType)
Invoked prior to a successful transformation being applied.- Specified by:
onTransformationin interfaceAgentBuilder.Listener- 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
public void onIgnored(TypeDescription typeDescription, @MaybeNull java.lang.ClassLoader classLoader, @MaybeNull JavaModule module, boolean loaded)
Invoked when a type is not transformed but ignored.- Specified by:
onIgnoredin interfaceAgentBuilder.Listener- 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
public void onError(java.lang.String typeName, @MaybeNull java.lang.ClassLoader classLoader, @MaybeNull JavaModule module, boolean loaded, java.lang.Throwable throwable)Invoked when an error has occurred during transformation.- Specified by:
onErrorin interfaceAgentBuilder.Listener- 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
public void onComplete(java.lang.String typeName, @MaybeNull java.lang.ClassLoader classLoader, @MaybeNull JavaModule module, boolean loaded)Invoked after a class was attempted to be loaded, independently of its treatment.- Specified by:
onCompletein interfaceAgentBuilder.Listener- 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.
-
-