Package net.bytebuddy.dynamic.loading
Class ClassInjector.UsingInstrumentation
- java.lang.Object
-
- net.bytebuddy.dynamic.loading.ClassInjector.UsingInstrumentation
-
- All Implemented Interfaces:
ClassInjector
- Enclosing interface:
- ClassInjector
public static class ClassInjector.UsingInstrumentation extends java.lang.Object implements ClassInjector
A class injector using aInstrumentation
to append to either the boot classpath or the system class path.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
ClassInjector.UsingInstrumentation.Target
A representation of the target to which Java classes should be appended to.-
Nested classes/interfaces inherited from interface net.bytebuddy.dynamic.loading.ClassInjector
ClassInjector.UsingInstrumentation, ClassInjector.UsingLookup, ClassInjector.UsingReflection, ClassInjector.UsingUnsafe
-
-
Field Summary
-
Fields inherited from interface net.bytebuddy.dynamic.loading.ClassInjector
ALLOW_EXISTING_TYPES
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
UsingInstrumentation(java.io.File folder, ClassInjector.UsingInstrumentation.Target target, java.lang.instrument.Instrumentation instrumentation, RandomString randomString)
Creates an instrumentation-based class injector.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.Map<TypeDescription,java.lang.Class<?>>
inject(java.util.Map<? extends TypeDescription,byte[]> types)
Injects the given types into the represented class loader.static ClassInjector
of(java.io.File folder, ClassInjector.UsingInstrumentation.Target target, java.lang.instrument.Instrumentation instrumentation)
Creates an instrumentation-based class injector.
-
-
-
Constructor Detail
-
UsingInstrumentation
protected UsingInstrumentation(java.io.File folder, ClassInjector.UsingInstrumentation.Target target, java.lang.instrument.Instrumentation instrumentation, RandomString randomString)
Creates an instrumentation-based class injector.- Parameters:
folder
- The folder to be used for storing jar files.target
- A representation of the target path to which classes are to be appended.instrumentation
- The instrumentation to use for appending to the class path or the boot path.randomString
- The random string generator to use.
-
-
Method Detail
-
of
public static ClassInjector of(java.io.File folder, ClassInjector.UsingInstrumentation.Target target, java.lang.instrument.Instrumentation instrumentation)
Creates an instrumentation-based class injector.- Parameters:
folder
- The folder to be used for storing jar files.target
- A representation of the target path to which classes are to be appended.instrumentation
- The instrumentation to use for appending to the class path or the boot path.- Returns:
- An appropriate class injector that applies instrumentation.
-
inject
public java.util.Map<TypeDescription,java.lang.Class<?>> inject(java.util.Map<? extends TypeDescription,byte[]> types)
Description copied from interface:ClassInjector
Injects the given types into the represented class loader.- Specified by:
inject
in interfaceClassInjector
- Parameters:
types
- The types to load via injection.- Returns:
- The loaded types that were passed as arguments.
-
-