Package net.bytebuddy.agent.builder
Class AgentBuilder.Listener.ModuleReadEdgeCompleting
java.lang.Object
net.bytebuddy.agent.builder.AgentBuilder.Listener.Adapter
net.bytebuddy.agent.builder.AgentBuilder.Listener.ModuleReadEdgeCompleting
- All Implemented Interfaces:
AgentBuilder.Listener
- Enclosing interface:
AgentBuilder.Listener
@Enhance
public static class AgentBuilder.Listener.ModuleReadEdgeCompleting
extends AgentBuilder.Listener.Adapter
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.
-
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 booleantrueif the listener should also add a read-edge from the supplied modules to the instrumented type's module.private final InstrumentationThe instrumentation instance used for adding read edges.private final Set<? extends JavaModule> The modules to add as a read edge to any transformed class's module.Fields inherited from interface net.bytebuddy.agent.builder.AgentBuilder.Listener
LOADED -
Constructor Summary
ConstructorsConstructorDescriptionModuleReadEdgeCompleting(Instrumentation instrumentation, boolean addTargetEdge, Set<? extends JavaModule> modules) Creates a new module read-edge completing listener. -
Method Summary
Modifier and TypeMethodDescriptionstatic AgentBuilder.Listenerof(Instrumentation instrumentation, boolean addTargetEdge, Class<?>... type) Resolves a listener that adds module edges from and to the instrumented type's module.voidonTransformation(TypeDescription typeDescription, ClassLoader classLoader, JavaModule module, boolean loaded, DynamicType dynamicType) Invoked prior to a successful transformation being applied.Methods inherited from class net.bytebuddy.agent.builder.AgentBuilder.Listener.Adapter
onComplete, onDiscovery, onError, onIgnored
-
Field Details
-
instrumentation
The instrumentation instance used for adding read edges. -
addTargetEdge
private final boolean addTargetEdgetrueif the listener should also add a read-edge from the supplied modules to the instrumented type's module. This will also ensure that the package of the instrumented type is exported to the target module. -
modules
The modules to add as a read edge to any transformed class's module.
-
-
Constructor Details
-
ModuleReadEdgeCompleting
public ModuleReadEdgeCompleting(Instrumentation instrumentation, boolean addTargetEdge, Set<? extends JavaModule> modules) Creates a new module read-edge completing listener.- Parameters:
instrumentation- The instrumentation instance used for adding read edges.addTargetEdge-trueif the listener should also add a read-edge from the supplied modules to the instrumented type's module. This will also ensure that the package of the instrumented type is exported to the target module.modules- The modules to add as a read edge to any transformed class's module.
-
-
Method Details
-
of
public static AgentBuilder.Listener of(Instrumentation instrumentation, boolean addTargetEdge, Class<?>... type) Resolves a listener that adds module edges from and to the instrumented type's module.- Parameters:
instrumentation- The instrumentation instance used for adding read edges.addTargetEdge-trueif the listener should also add a read-edge from the supplied modules to the instrumented type's module. This will also ensure that the package of the instrumented type is exported to the target module.type- The types for which to extract the modules.- Returns:
- An appropriate listener.
-
onTransformation
public void onTransformation(TypeDescription typeDescription, @MaybeNull ClassLoader classLoader, @MaybeNull JavaModule module, boolean loaded, DynamicType dynamicType) Description copied from class:AgentBuilder.Listener.AdapterInvoked prior to a successful transformation being applied.- Specified by:
onTransformationin interfaceAgentBuilder.Listener- Overrides:
onTransformationin classAgentBuilder.Listener.Adapter- 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.
-