Class AgentBuilder.Listener.ModuleReadEdgeCompleting

    • Field Detail

      • instrumentation

        private final java.lang.instrument.Instrumentation instrumentation
        The instrumentation instance used for adding read edges.
      • addTargetEdge

        private final boolean addTargetEdge
        true if 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

        private final java.util.Set<? extends JavaModule> modules
        The modules to add as a read edge to any transformed class's module.
    • Constructor Detail

      • ModuleReadEdgeCompleting

        public ModuleReadEdgeCompleting​(java.lang.instrument.Instrumentation instrumentation,
                                        boolean addTargetEdge,
                                        java.util.Set<? extends JavaModule> modules)
        Creates a new module read-edge completing listener.
        Parameters:
        instrumentation - The instrumentation instance used for adding read edges.
        addTargetEdge - true if 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 Detail

      • of

        public static AgentBuilder.Listener of​(java.lang.instrument.Instrumentation instrumentation,
                                               boolean addTargetEdge,
                                               java.lang.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 - true if 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,
                                     java.lang.ClassLoader classLoader,
                                     JavaModule module,
                                     boolean loaded,
                                     DynamicType dynamicType)
        Description copied from class: AgentBuilder.Listener.Adapter
        Invoked prior to a successful transformation being applied.
        Specified by:
        onTransformation in interface AgentBuilder.Listener
        Overrides:
        onTransformation in class AgentBuilder.Listener.Adapter
        Parameters:
        typeDescription - The type that is being transformed.
        classLoader - The class loader which is loading this type.
        module - The transformed type's module or null if the current VM does not support modules.
        loaded - true if the type is already loaded.
        dynamicType - The dynamic type that was created.