Package io.jmix.core.impl
Class JavaClassLoader
java.lang.Object
java.lang.ClassLoader
java.security.SecureClassLoader
java.net.URLClassLoader
io.jmix.core.impl.JavaClassLoader
- All Implemented Interfaces:
Closeable,AutoCloseable
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static classClass loader is used for building class instances from ".class" files.protected static class -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final Map<String, ClassFilesProvider> protected final booleanprotected final Map<String, TimestampClass> protected final ConcurrentHashMap<String, Lock> protected final ProxyClassLoaderprotected SpringBeanLoaderprotected TimeSource -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidcollectModifiedClassFiles(String rootDir) Collects class files that were modified or not loaded yet from the directoryvoiddestroy()findResource(String name) getClassDependencies(String className) getClassDependent(String className) protected Datebyte[]getGeneratedClassResource(String resourceName) getResource(String name) booleanisGeneratedClass(String className) booleanisLoadedClass(String className) protected ClassloadClassFromClassFile(String fullClassName, String containerClassName, File classFile) Class<?> loadGeneratedClass(String className, byte[] bytes) loadGeneratedClasses(Map<String, byte[]> generatedClasses) booleanremoveClass(String className) Methods inherited from class java.net.URLClassLoader
addURL, close, definePackage, findClass, findResources, getPermissions, getResourceAsStream, getURLs, newInstance, newInstanceMethods inherited from class java.security.SecureClassLoader
defineClass, defineClassMethods inherited from class java.lang.ClassLoader
clearAssertionStatus, defineClass, defineClass, defineClass, defineClass, definePackage, findClass, findLibrary, findLoadedClass, findResource, findSystemClass, getClassLoadingLock, getDefinedPackage, getDefinedPackages, getName, getPackage, getPackages, getParent, getPlatformClassLoader, getResources, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, getUnnamedModule, isRegisteredAsParallelCapable, loadClass, registerAsParallelCapable, resolveClass, resources, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSigners
-
Field Details
-
rootDirs
-
hotDeployEnabled
protected final boolean hotDeployEnabled -
loaded
-
generatedClassBytes
-
locks
-
proxyClassLoader
-
classFilesProviders
-
timeSource
-
springBeanLoader
-
-
Constructor Details
-
JavaClassLoader
-
-
Method Details
-
clearCache
public void clearCache() -
destroy
@PreDestroy public void destroy() -
loadClass
- Overrides:
loadClassin classClassLoader- Throws:
ClassNotFoundException
-
loadGeneratedClass
-
loadGeneratedClasses
-
loadClassFromClassFile
-
collectModifiedClassFiles
Collects class files that were modified or not loaded yet from the directory -
getGeneratedClassResource
-
removeClass
-
isLoadedClass
-
isGeneratedClass
-
getClassDependencies
-
getClassDependent
-
findResource
- Overrides:
findResourcein classURLClassLoader
-
getResource
- Overrides:
getResourcein classClassLoader
-
getRootPaths
-
getCurrentTimestamp
-