Package net.bytebuddy.dynamic
Class DynamicType.Default.Unloaded<T>
- java.lang.Object
-
- net.bytebuddy.dynamic.DynamicType.Default
-
- net.bytebuddy.dynamic.DynamicType.Default.Unloaded<T>
-
- Type Parameters:
T- The most specific known loaded type that is implemented by this dynamic type, usually the type itself, an interface or the direct super class.
- All Implemented Interfaces:
DynamicType,DynamicType.Unloaded<T>
- Enclosing class:
- DynamicType.Default
@Enhance public static class DynamicType.Default.Unloaded<T> extends DynamicType.Default implements DynamicType.Unloaded<T>
A default implementation of an unloaded dynamic type.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class net.bytebuddy.dynamic.DynamicType.Default
DynamicType.Default.Dispatcher, DynamicType.Default.Loaded<T>, DynamicType.Default.Unloaded<T>
-
Nested classes/interfaces inherited from interface net.bytebuddy.dynamic.DynamicType
DynamicType.Builder<T>, DynamicType.Default, DynamicType.Loaded<T>, DynamicType.Unloaded<T>
-
-
Field Summary
Fields Modifier and Type Field Description private TypeResolutionStrategy.ResolvedtypeResolutionStrategyThe type resolution strategy to use for initializing the dynamic type.-
Fields inherited from class net.bytebuddy.dynamic.DynamicType.Default
auxiliaryTypes, binaryRepresentation, DISPATCHER, loadedTypeInitializer, typeDescription
-
-
Constructor Summary
Constructors Constructor Description Unloaded(TypeDescription typeDescription, byte[] binaryRepresentation, LoadedTypeInitializer loadedTypeInitializer, java.util.List<? extends DynamicType> auxiliaryTypes, TypeResolutionStrategy.Resolved typeResolutionStrategy)Creates a new unloaded representation of a dynamic type.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description DynamicType.Unloaded<T>include(java.util.List<? extends DynamicType> dynamicType)Includes the provided dynamic types as auxiliary types of this instance.DynamicType.Unloaded<T>include(DynamicType... dynamicType)Includes the provided dynamic types as auxiliary types of this instance.DynamicType.Loaded<T>load(java.lang.ClassLoader classLoader)Attempts to load this dynamic type including all of its auxiliary types, if any.<S extends java.lang.ClassLoader>
DynamicType.Loaded<T>load(S classLoader, ClassLoadingStrategy<? super S> classLoadingStrategy)Attempts to load this dynamic type including all of its auxiliary types, if any.-
Methods inherited from class net.bytebuddy.dynamic.DynamicType.Default
getAllTypes, getAuxiliaryTypes, getBytes, getLoadedTypeInitializers, getTypeDescription, hasAliveLoadedTypeInitializers, inject, inject, saveIn, toJar, toJar
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface net.bytebuddy.dynamic.DynamicType
getAllTypes, getAuxiliaryTypes, getBytes, getLoadedTypeInitializers, getTypeDescription, hasAliveLoadedTypeInitializers, inject, inject, saveIn, toJar, toJar
-
-
-
-
Field Detail
-
typeResolutionStrategy
private final TypeResolutionStrategy.Resolved typeResolutionStrategy
The type resolution strategy to use for initializing the dynamic type.
-
-
Constructor Detail
-
Unloaded
public Unloaded(TypeDescription typeDescription, byte[] binaryRepresentation, LoadedTypeInitializer loadedTypeInitializer, java.util.List<? extends DynamicType> auxiliaryTypes, TypeResolutionStrategy.Resolved typeResolutionStrategy)
Creates a new unloaded representation of a dynamic type.- Parameters:
typeDescription- A description of this dynamic type.binaryRepresentation- An array of byte of the binary representation of this dynamic type.loadedTypeInitializer- The type initializer of this dynamic type.auxiliaryTypes- The auxiliary types that are required for this dynamic type.typeResolutionStrategy- The type resolution strategy to use for initializing the dynamic type.
-
-
Method Detail
-
load
public DynamicType.Loaded<T> load(java.lang.ClassLoader classLoader)
Attempts to load this dynamic type including all of its auxiliary types, if any. If the class loader is an unsealed instance of
InjectionClassLoader, the classes are injected directy into the class loader, otherwise, a new class loader is created where the supplied class loader is set as parent.Note: A new class is attempted to be loaded each time this method is invoked, even if a compatible class was created previously. Consider using a
TypeCache.- Specified by:
loadin interfaceDynamicType.Unloaded<T>- Parameters:
classLoader- The class loader to use for this class loading.- Returns:
- This dynamic type in its loaded state.
-
load
public <S extends java.lang.ClassLoader> DynamicType.Loaded<T> load(S classLoader, ClassLoadingStrategy<? super S> classLoadingStrategy)
Attempts to load this dynamic type including all of its auxiliary types, if any.
Note: A new class is attempted to be loaded each time this method is invoked, even if a compatible class was created previously. Consider using a
TypeCache.- Specified by:
loadin interfaceDynamicType.Unloaded<T>- Type Parameters:
S- The least specific type of class loader this strategy can apply to.- Parameters:
classLoader- The class loader to use for this class loading.classLoadingStrategy- The class loader strategy which should be used for this class loading.- Returns:
- This dynamic type in its loaded state.
- See Also:
ClassLoadingStrategy.Default
-
include
public DynamicType.Unloaded<T> include(DynamicType... dynamicType)
Includes the provided dynamic types as auxiliary types of this instance.- Specified by:
includein interfaceDynamicType.Unloaded<T>- Parameters:
dynamicType- The dynamic types to include.- Returns:
- A copy of this unloaded dynamic type which includes the provided dynamic types.
-
include
public DynamicType.Unloaded<T> include(java.util.List<? extends DynamicType> dynamicType)
Includes the provided dynamic types as auxiliary types of this instance.- Specified by:
includein interfaceDynamicType.Unloaded<T>- Parameters:
dynamicType- The dynamic types to include.- Returns:
- A copy of this unloaded dynamic type which includes the provided dynamic types.
-
-