Class Sniffer
java.lang.Object
java.lang.ClassLoader
org.burningwave.core.classes.MemoryClassLoader
org.burningwave.tools.dependencies.Sniffer
- All Implemented Interfaces:
AutoCloseable,org.burningwave.core.Component,org.burningwave.core.iterable.Properties.Listener,org.burningwave.core.ManagedLogger
public class Sniffer
extends org.burningwave.core.classes.MemoryClassLoader
-
Nested Class Summary
-
Field Summary
-
Constructor Summary
Constructors Constructor Description Sniffer(ClassLoader parent) -
Method Summary
Modifier and Type Method Description Class<?>_loadClass(String className, boolean resolve)voidaddCompiledClass(String className, ByteBuffer byteCode)voidaddLoadedCompiledClass(String className, ByteBuffer byteCode)voidclose()protected Collection<org.burningwave.core.classes.JavaClass>consumeClass(String className)Collection<org.burningwave.core.classes.JavaClass>consumeClasses(Collection<String> currentNotFoundClasses)protected Collection<org.burningwave.core.io.FileSystemItem>consumeResource(String relativePath, boolean breakWhenFound)ClassLoadergetMasterClassLoader(ClassLoader classLoader)URLgetResource(String name)InputStreamgetResourceAsStream(String name)Enumeration<URL>getResources(String name)protected Snifferinit(boolean useAsMasterClassLoader, org.burningwave.core.io.FileSystemScanner fileSystemScanner, Collection<String> baseClassPaths, Function<org.burningwave.core.classes.JavaClass,Boolean> javaClassAdder, Function<org.burningwave.core.io.FileSystemItem,Boolean> resourceAdder, org.burningwave.core.function.TriConsumer<String,String,ByteBuffer> resourcesConsumer)protected Class<?>loadClass(String className, boolean resolve)Function<Boolean,ClassLoader>setAsMasterClassLoader(ClassLoader classLoader)Methods inherited from class org.burningwave.core.classes.MemoryClassLoader
_defineClass, addCompiledClasses, addCompiledClasses, clear, create, definePackage, definePackageOf, findClass, forceCompiledClassesLoading, getByteCodeOf, getLoadedClassesForPackage, getLoadedCompiledClassesAsInputStream, getNotLoadedCompiledClass, hasPackageBeenDefined, loadCompiledClassesNotLoaded, loadOrUploadClass, loadOrUploadClass, loadOrUploadClass, removeNotLoadedCompiledClass, unregisterMethods inherited from class java.lang.ClassLoader
clearAssertionStatus, defineClass, defineClass, defineClass, defineClass, findClass, findLibrary, findLoadedClass, findResource, findResource, findResources, findSystemClass, getClassLoadingLock, getDefinedPackage, getDefinedPackages, getName, getPackage, getPackages, getParent, getPlatformClassLoader, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, getUnnamedModule, isRegisteredAsParallelCapable, loadClass, registerAsParallelCapable, resolveClass, resources, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSignersMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.burningwave.core.Component
getOrCreateTemporaryFolder, getTemporaryFolderPrefix
-
Constructor Details
-
Method Details
-
init
protected Sniffer init(boolean useAsMasterClassLoader, org.burningwave.core.io.FileSystemScanner fileSystemScanner, Collection<String> baseClassPaths, Function<org.burningwave.core.classes.JavaClass,Boolean> javaClassAdder, Function<org.burningwave.core.io.FileSystemItem,Boolean> resourceAdder, org.burningwave.core.function.TriConsumer<String,String,ByteBuffer> resourcesConsumer) -
setAsMasterClassLoader
-
getMasterClassLoader
-
addCompiledClass
- Overrides:
addCompiledClassin classorg.burningwave.core.classes.MemoryClassLoader
-
consumeClass
-
consumeClasses
public Collection<org.burningwave.core.classes.JavaClass> consumeClasses(Collection<String> currentNotFoundClasses) -
consumeResource
protected Collection<org.burningwave.core.io.FileSystemItem> consumeResource(String relativePath, boolean breakWhenFound) -
addLoadedCompiledClass
- Overrides:
addLoadedCompiledClassin classorg.burningwave.core.classes.MemoryClassLoader
-
loadClass
- Overrides:
loadClassin classorg.burningwave.core.classes.MemoryClassLoader- Throws:
ClassNotFoundException
-
_loadClass
- Throws:
ClassNotFoundException
-
getResource
- Overrides:
getResourcein classClassLoader
-
getResources
- Overrides:
getResourcesin classClassLoader- Throws:
IOException
-
getResourceAsStream
- Overrides:
getResourceAsStreamin classorg.burningwave.core.classes.MemoryClassLoader
-
close
public void close()- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceorg.burningwave.core.Component- Overrides:
closein classorg.burningwave.core.classes.MemoryClassLoader
-