Interface ClassLoadingStrategy<T extends ClassLoader>
- Type Parameters:
T- The least specific type of class loader this strategy can apply to.
- All Known Subinterfaces:
ClassLoadingStrategy.Configurable<S>
- All Known Implementing Classes:
ClassLoadingStrategy.Default, ClassLoadingStrategy.Default.InjectionDispatcher, ClassLoadingStrategy.Default.WrappingDispatcher, ClassLoadingStrategy.ForBootstrapInjection, ClassLoadingStrategy.ForJnaInjection, ClassLoadingStrategy.ForUnsafeInjection, ClassLoadingStrategy.UsingLookup, ClassReloadingStrategy, InjectionClassLoader.Strategy
public interface ClassLoadingStrategy<T extends ClassLoader>
A strategy for loading a collection of types.
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic interfaceAClassLoadingStrategythat allows configuring the strategy's behavior.static enumThis class contains implementations of default class loading strategies.static classA class loading strategy which allows class injection into the bootstrap class loader if appropriate.static classA class loading strategy that injects a class using JNA via the JNI DefineClass method.static classA class loading strategy that injects a class usingsun.misc.Unsafeorjdk.internal.misc.Unsafe.static classA class loading strategy that uses ajava.lang.invoke.MethodHandles$Lookupinstance for defining types. -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final ClassLoaderA type-safe constant representing the bootstrap class loader which is represented bynullwithin Java.static final ProtectionDomainAn undefined protection domain. -
Method Summary
Modifier and TypeMethodDescriptionMap<TypeDescription, Class<?>> load(T classLoader, Map<TypeDescription, byte[]> types) Loads a given collection of classes given their binary representation.
-
Field Details
-
BOOTSTRAP_LOADER
A type-safe constant representing the bootstrap class loader which is represented bynullwithin Java. -
NO_PROTECTION_DOMAIN
An undefined protection domain.
-
-
Method Details
-
load
Loads a given collection of classes given their binary representation.- Parameters:
classLoader- The class loader to used for loading the classes.types- Byte array representations of the types to be loaded mapped by their descriptions, where an iteration order defines an order in which they are supposed to be loaded, if relevant.- Returns:
- A collection of the loaded classes which will be initialized in the iteration order of the returned collection.
-