Class EnhancerClassLoader
java.lang.Object
java.lang.ClassLoader
org.datanucleus.enhancer.EnhancerClassLoader
ClassLoader for newly defined classes. Parent classloader is the context classloader
obtained during instantiation of this class
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) ClassLoaderResolverDelegate ClassLoaderResolver may be used during class definition if the class has links to other classes.(package private) booleanflag to avoid reentrant invocations to loading operations(package private) booleanflag to avoid reentrant invocations to loading operations -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoiddefineClass(String fullClassName, byte[] bytes, ClassLoaderResolver clr) Define a class in this ClassLoader.protected URLfindResource(String name) Overwrite to have an opportunity to find resources from the delegate ClassLoaderResolverOverwrite to have an opportunity to load classes from the delegate ClassLoaderResolverMethods inherited from class ClassLoader
clearAssertionStatus, defineClass, defineClass, defineClass, defineClass, definePackage, findClass, findLibrary, findLoadedClass, findResources, findSystemClass, getClassLoadingLock, getPackage, getPackages, getParent, getResource, getResourceAsStream, getResources, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, loadClass, registerAsParallelCapable, resolveClass, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSigners
-
Field Details
-
delegate
ClassLoaderResolver delegateDelegate ClassLoaderResolver may be used during class definition if the class has links to other classes. -
loadingClass
boolean loadingClassflag to avoid reentrant invocations to loading operations -
loadingResource
boolean loadingResourceflag to avoid reentrant invocations to loading operations
-
-
Constructor Details
-
EnhancerClassLoader
public EnhancerClassLoader() -
EnhancerClassLoader
-
-
Method Details
-
defineClass
Define a class in this ClassLoader.- Parameters:
fullClassName- the class namebytes- the bytes representation of the classclr- the ClassLoaderResolver to load linked classes
-
loadClass
Overwrite to have an opportunity to load classes from the delegate ClassLoaderResolver- Overrides:
loadClassin classClassLoader- Throws:
ClassNotFoundException
-
findResource
Overwrite to have an opportunity to find resources from the delegate ClassLoaderResolver- Overrides:
findResourcein classClassLoader
-