Uses of Package
net.bytebuddy.agent.builder
Packages that use net.bytebuddy.agent.builder
Package
Description
An agent builder is used to easily implement load-time class-transformations using a Java agent.
-
Classes in net.bytebuddy.agent.builder used by net.bytebuddy.agent.builderClassDescriptionAn agent builder provides a convenience API for defining a Java agent.A circularity lock is responsible for preventing that a
ClassFileLocatoris used recursively.An inactive circularity lock which is always acquirable.A circularity lock that surrounds the locking mechanism with a global lock to prevent that the locking mechanism itself loads classes and causes a circularity issue.A trivial lock that monitors if a class is currently loaded by the current thread.This strategy determines how the provided class file buffer is used.An implementation of default class file buffer strategy.The default implementation of anAgentBuilder.An abstract implementation of an agent builder that delegates all invocation to another instance.An abstract base implementation of a matchable.A dispatcher for interacting with the instrumentation API.A factory for creating aClassFileTransformerfor the current VM.An action to create an implementation ofAgentBuilder.Default.ExecutingTransformerthat support Java 9 modules.A factory for aClassFileTransformeron a VM that does not support thejava.lang.ModuleAPI.A strategy for determining if a native method name prefix should be used when rebasing methods.A native method strategy that suffixes method names with a random suffix and disables native method rebasement.A transformation to apply.A strategy to warm up aClassFileTransformerbefore using it to eagerly load classes and to avoid circularity errors when classes are loaded during actual transformation for the first time.A dispatcher to interact with aClassFileTransformerwhen the module system is active.A non-operational warmup strategy.A description strategy is responsible for resolving aTypeDescriptionwhen transforming or retransforming/-defining a type.Default implementations of aAgentBuilder.DescriptionStrategy.A fallback strategy allows to reattempt a transformation or a consideration for redefinition/retransformation in case an exception occurs.A simple fallback strategy that either always reattempts a transformation or never does so.Describes anAgentBuilderwhich was handed a matcher for identifying types to instrumented in order to supply one or severalAgentBuilder.Transformers.This interface is used to allow for optionally providing severalAgentBuilder.Transformerto applied when a matcher identifies a type to be instrumented.Allows to specify a type matcher for a type to instrument.Allows to further specify ignored types.An initialization strategy which determines the handling ofLoadedTypeInitializers and the loading of auxiliary types.A dispatcher for changing a class file to adapt a self-initialization strategy.An initialization strategy that loads auxiliary types before loading the instrumented type.A non-initializing initialization strategy.An initialization strategy that adds a code block to an instrumented type's type initializer which then calls a specific class that is responsible for the explicit initialization.A dispatcher for a self-initialization strategy.A strategy for injecting auxiliary types into a class loader.An injection strategy that does not permit class injection.An injection strategy that uses JNA to inject classes.An injection strategy that uses Java reflection.An injection strategy that usessun.misc.Unsafeorjdk.internal.misc.Unsafeto inject classes.A listener that is notified during the installation and the resetting of a class file transformer.An adapter implementation for an installation listener that serves as a convenience.A listener that suppresses any installation error.A non-operational listener that does not do anything.Implements the instrumentation of theLambdaMetafactoryif this feature is enabled.Implements a lambda class's executing transformer.An implementation of a instance factory for a lambda expression's class.A dispatcher for a lambda expression's implementation.An invocation that is using a direct call to the target method.A factory for rewriting the JDK'sjava.lang.invoke.LambdaMetafactorymethods for use with Byte Buddy.A loader is responsible for loading a generated class file in the current VM.An implementation that indicates that no loader is available.A loader that uses a method handle lookup object to load a class.A loader that is using unsafe API to load a lambda implementation.A listener that is informed about events that occur during an instrumentation process.An adapter for a listener where all methods are implemented as non-operational.A no-op implementation of aAgentBuilder.Listener.A listener that writes events to aPrintStream.A strategy for creating aClassFileLocatorwhen instrumenting a type.A location strategy that locates class files by querying an instrumented type'sClassLoader.A location strategy that never locates any byte code.An abstraction for extending a matcher.Determines how patching aResettableClassFileTransformerresolves the transformer exchange.A handler to allow for callbacks prior and after registering aClassFileTransformer.A non-operational handler.A type locator allows to specify howTypeDescriptions are resolved by anAgentBuilder.A type locator that attempts loading a type if it cannot be located by the underlying lazy type pool.A default type locator that resolves types only if any property that is not the type's name is requested.A type locator that resolves all type descriptions eagerly.A default type locator that resolves types only if any property that is not the type's name is requested.A type locator that uses type pools but allows for the configuration of a custom cache provider by class loader.An action that creates a class loader to mark the bootstrap loader without usingnull.A matcher that allows to determine if aAgentBuilder.Transformershould be applied during the execution of aClassFileTransformerthat was generated by anAgentBuilder.A raw matcher indicating the state of a type's class loading.Only matches loaded types that can be fully resolved.A matcher that always or never matches a type.An agent builder configuration that allows the registration of listeners to the redefinition process.A matcher that determines if types should be resubmitted if it is not yet loaded.A trivial matcher for immediate resubmission.A matcher that determines if types should be resubmitted if it is not yet loaded and if an exception is raised.A trivial matcher for resubmission upon an exception.An agent builder configuration strategy that allows the definition of a discovery strategy.An agent builder configuration that allows the configuration of a batching strategy.AnAgentBuilderspecification that requires a resubmission specification.A complete but extendable resubmission specification.A redefinition strategy regulates how already loaded classes are modified by a built agent.A batch allocator which is responsible for applying a redefinition in a batches.A batch allocator that includes all types in a single batch.A collector is responsible for collecting classes that are to be considered for modification.A strategy for discovering types to redefine.A discovery strategy that considers all loaded types supplied byInstrumentation.getAllLoadedClasses().A discovery strategy that simplifies the application ofAgentBuilder.RedefinitionStrategy.DiscoveryStrategy.Reiteratingby assuming that the loaded classes that are returned byInstrumentation.getAllLoadedClasses()are always returned in the same order.A discovery strategy that considers all loaded types supplied byInstrumentation.getAllLoadedClasses().A dispatcher for interacting with the instrumentation API.A listener to be applied during a redefinition.A listener adapter that offers non-operational implementations of all listener methods.A listener that halts a retransformation process upon an exception.A non-operational listener.A listener that invokesThread.yield()prior to every batch but the first batch.A resubmission enforcer determines if a non-loaded class should be scheduled for resubmission or be treated upon first load.A resubmission enforcer that does not consider non-loaded classes.A resubmission scheduler is responsible for scheduling a job that is resubmitting unloaded types that failed during retransformation.A cancelable allows to discontinue a resubmission job.A non-operational cancelable.A resubmission scheduler that does not apply any scheduling.A resubmission strategy is responsible for enabling resubmission of types that failed to resubmit.A disabled resubmission strategy.A key for a class loader that only weakly references the class loader.Represents an installation of a resubmission strategy.A transformer allows to apply modifications to aDynamicType.A transformer for applying anAdvicewhere this advice class might reference types of both the agent's and the user's class loader.An entry for an advice to apply.A decorator that allows to change the class file transformer that is registered.Wraps a class file transformer to become substitutable.A transformer decorator that retains the original transformer.A type strategy is responsible for creating a type builder for a type that is being instrumented.Default implementations of type strategies.This class serves as a dispatcher for creating lambda expression objects when Byte Buddy is configured to instrument thejava.lang.invoke.LambdaMetafactory.A class file transformer that can reset its transformation.An abstract base implementation of aResettableClassFileTransformer.AResettableClassFileTransformerwhich allows for substitution the actual class file transformer without changes in the order of the transformer chain.Implements a resettable class file transformer that allows for the delegation of a transformation.A callback that is invoked upon class file transformation.A factory for creating a subclass ofResettableClassFileTransformer.WithDelegation.Substitutablethat supports the module system, if available.An action to create a suitable factory.A factory for a substitutable class file transformer when the module system is not supported.A factory that creates a resettable class file transformer depending on the availability of the module system.An action to create a suitable factory.A factory for a substitutable class file transformer when the module system is not supported.