Class ShrinkWrapClassLoader
java.lang.Object
java.lang.ClassLoader
java.security.SecureClassLoader
java.net.URLClassLoader
org.jboss.shrinkwrap.api.classloader.ShrinkWrapClassLoader
- All Implemented Interfaces:
Closeable
,AutoCloseable
Extension that will create a ClassLoader based on a Array of Archives. When done, call
close()
to free resources.-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final String
Empty Stringprivate static final Logger
Loggerprivate final List
<InputStream> List of all streams opened, such that they may be closed inclose()
. -
Constructor Summary
ConstructorsConstructorDescriptionShrinkWrapClassLoader
(ClassLoader parent, Archive<?>... archives) Constructs a new ShrinkWrapClassLoader for the givenArchive
s.ShrinkWrapClassLoader
(Archive<?>... archives) Constructs a new ShrinkWrapClassLoader for the specifiedArchive
s using the default delegation parentClassLoader
. -
Method Summary
Modifier and TypeMethodDescriptionprivate void
addArchive
(Archive<?> archive) private void
addArchives
(Archive<?>[] archives) void
close()
Methods inherited from class java.net.URLClassLoader
addURL, definePackage, findClass, findResource, findResources, getPermissions, getResourceAsStream, getURLs, newInstance, newInstance
Methods inherited from class java.security.SecureClassLoader
defineClass, defineClass
Methods inherited from class java.lang.ClassLoader
clearAssertionStatus, defineClass, defineClass, defineClass, defineClass, definePackage, findLibrary, findLoadedClass, findSystemClass, getClassLoadingLock, getPackage, getPackages, getParent, getResource, getResources, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, loadClass, loadClass, registerAsParallelCapable, resolveClass, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSigners
-
Field Details
-
log
Logger -
EMPTY
Empty String- See Also:
-
openedStreams
List of all streams opened, such that they may be closed inclose()
. Guarded by "this".
-
-
Constructor Details
-
ShrinkWrapClassLoader
Constructs a new ShrinkWrapClassLoader for the specifiedArchive
s using the default delegation parentClassLoader
. TheArchive
s will be searched in the order specified for classes and resources after first searching in the parent class loader.- Parameters:
archives
- theArchive
s from which to load classes and resources
-
ShrinkWrapClassLoader
Constructs a new ShrinkWrapClassLoader for the givenArchive
s. TheArchive
s will be searched in the order specified for classes and resources after first searching in the specified parent class loader.- Parameters:
parent
- the parent class loader for delegationarchives
- theArchive
s from which to load classes and resources
-
-
Method Details
-
addArchives
-
addArchive
-
close
- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Overrides:
close
in classURLClassLoader
- Throws:
IOException
-