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.Cleanable,org.burningwave.core.Closeable,org.burningwave.core.Component,org.burningwave.core.Identifiable,org.burningwave.core.iterable.Properties.Listener,org.burningwave.core.Memorizer
public class Sniffer
extends org.burningwave.core.classes.MemoryClassLoader
-
Field Summary
Fields inherited from class org.burningwave.core.classes.MemoryClassLoader
isClosed -
Constructor Summary
Constructors Constructor Description Sniffer(ClassLoader parent) -
Method Summary
Modifier and Type Method Description Class<?>_loadClass(String className, boolean resolve)voidaddByteCode(String className, ByteBuffer byteCode)voidaddLoadedByteCode(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, 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
addByteCodes, addByteCodes, clear, create, definePackage, findClass, forceBytecodesLoading, getByteCodeAsInputStream, getByteCodeOf, getLoadedClassesForPackage, getNotLoadedByteCode, hasPackageBeenDefined, loadOrDefineClass, loadOrDefineClass, loadOrDefineClass, register, removeNotLoadedBytecode, unregister, 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.Closeable
closeResources, closeResources, createCloseResoucesTask, createCloseResoucesTaskMethods inherited from interface org.burningwave.core.Identifiable
getId, getOperationIdMethods inherited from interface org.burningwave.core.Memorizer
getOrCreateTemporaryFolder, getOrCreateTemporaryFolder, getTemporaryFolderPrefixMethods inherited from interface org.burningwave.core.iterable.Properties.Listener
listenTo, processChangeNotification, unregister
-
Constructor Details
-
Sniffer
-
-
Method Details
-
init
protected Sniffer init(boolean useAsMasterClassLoader, 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
-
addByteCode
- Overrides:
addByteCodein 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) -
addLoadedByteCode
- Overrides:
addLoadedByteCodein 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.Closeable- Overrides:
closein classorg.burningwave.core.classes.MemoryClassLoader
-