Package net.bytebuddy.dynamic
Interface ClassFileLocator.ForInstrumentation.Dispatcher
- Enclosing class:
ClassFileLocator.ForInstrumentation
@Proxied("java.lang.instrument.Instrumentation")
protected static interface ClassFileLocator.ForInstrumentation.Dispatcher
A dispatcher to interact with the
Instrumentation API.-
Method Summary
Modifier and TypeMethodDescriptionvoidaddTransformer(Instrumentation instrumentation, ClassFileTransformer classFileTransformer, boolean canRetransform) Registers a transformer.booleanisRetransformClassesSupported(Instrumentation instrumentation) Invokes theInstrumentation#isRetransformClassesSupportedmethod.voidretransformClasses(Instrumentation instrumentation, Class<?>[] type) Retransforms the supplied classes.
-
Method Details
-
isRetransformClassesSupported
Invokes theInstrumentation#isRetransformClassesSupportedmethod.- Parameters:
instrumentation- The instrumentation instance to invoke the method on.- Returns:
trueif the supplied instrumentation instance supports retransformation.
-
addTransformer
void addTransformer(Instrumentation instrumentation, ClassFileTransformer classFileTransformer, boolean canRetransform) Registers a transformer.- Parameters:
instrumentation- The instrumentation instance to invoke the method on.classFileTransformer- The class file transformer to register.canRetransform-trueif the class file transformer should be invoked upon a retransformation.
-
retransformClasses
void retransformClasses(Instrumentation instrumentation, Class<?>[] type) throws UnmodifiableClassException Retransforms the supplied classes.- Parameters:
instrumentation- The instrumentation instance to invoke the method on.type- The types to retransform.- Throws:
UnmodifiableClassException- If any of the supplied types are unmodifiable.
-