public static class ByteArrayClassLoader.ChildFirst extends ByteArrayClassLoader
A ByteArrayClassLoader
which applies child-first semantics for the
given type definitions.
Important: Package definitions remain their parent-first semantics as loaded package definitions do not expose their class loaders. Also, it is not possible to make this class or its subclass parallel-capable as the loading strategy is overridden.
Modifier and Type | Class and Description |
---|---|
protected static class |
ByteArrayClassLoader.ChildFirst.PrependingEnumeration
An enumeration that prepends an element to another enumeration and skips the last element of the provided enumeration.
|
protected static interface |
ByteArrayClassLoader.ChildFirst.SynchronizationStrategy
An engine for receiving a class loading lock when loading a class.
|
ByteArrayClassLoader.ChildFirst, ByteArrayClassLoader.ClassLoaderCreationAction, ByteArrayClassLoader.EmptyEnumeration, ByteArrayClassLoader.PersistenceHandler, ByteArrayClassLoader.SingletonEnumeration
accessControlContext, packageDefinitionStrategy, persistenceHandler, protectionDomain, typeDefinitions, URL_SCHEMA
Constructor and Description |
---|
ChildFirst(ClassLoader parent,
Map<String,byte[]> typeDefinitions,
ProtectionDomain protectionDomain,
AccessControlContext accessControlContext,
ByteArrayClassLoader.PersistenceHandler persistenceHandler,
PackageDefinitionStrategy packageDefinitionStrategy)
Creates a new child-first byte array class loader.
|
Modifier and Type | Method and Description |
---|---|
URL |
getResource(String name) |
Enumeration<URL> |
getResources(String name) |
protected Class<?> |
loadClass(String name,
boolean resolve) |
String |
toString() |
findClass, findResource, findResources, load, of
clearAssertionStatus, defineClass, defineClass, defineClass, defineClass, definePackage, findLibrary, findLoadedClass, findSystemClass, getClassLoadingLock, getPackage, getPackages, getParent, getResourceAsStream, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, loadClass, registerAsParallelCapable, resolveClass, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSigners
public ChildFirst(ClassLoader parent, Map<String,byte[]> typeDefinitions, ProtectionDomain protectionDomain, AccessControlContext accessControlContext, ByteArrayClassLoader.PersistenceHandler persistenceHandler, PackageDefinitionStrategy packageDefinitionStrategy)
parent
- The ClassLoader
that is the parent of this class loader.typeDefinitions
- A map of fully qualified class names pointing to their binary representations.protectionDomain
- The protection domain to apply where null
references an implicit protection domain.accessControlContext
- The access control context to use for loading classes.persistenceHandler
- The persistence handler of this class loader.packageDefinitionStrategy
- The package definer to be queried for package definitions.protected Class<?> loadClass(String name, boolean resolve) throws ClassNotFoundException
loadClass
in class ClassLoader
ClassNotFoundException
public URL getResource(String name)
getResource
in class ClassLoader
public Enumeration<URL> getResources(String name) throws IOException
getResources
in class ClassLoader
IOException
public String toString()
toString
in class ByteArrayClassLoader
Copyright © 2014–2016. All rights reserved.