Package net.bytebuddy.dynamic.loading
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 interface
AClassLoadingStrategy
that allows configuring the strategy's behavior.static enum
This class contains implementations of default class loading strategies.static class
A class loading strategy which allows class injection into the bootstrap class loader if appropriate.static class
A class loading strategy that injects a class using JNA via the JNI DefineClass method.static class
A class loading strategy that injects a class usingsun.misc.Unsafe
orjdk.internal.misc.Unsafe
.static class
A class loading strategy that uses ajava.lang.invoke.MethodHandles$Lookup
instance for defining types. -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final ClassLoader
A type-safe constant representing the bootstrap class loader which is represented bynull
within Java.static final ProtectionDomain
An 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 bynull
within 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.
-