public class WeavingURLClassLoader extends ExtensibleURLClassLoader implements WeavingClassLoader
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
WEAVING_ASPECT_PATH |
static java.lang.String |
WEAVING_CLASS_PATH |
Constructor and Description |
---|
WeavingURLClassLoader(java.lang.ClassLoader parent) |
WeavingURLClassLoader(java.net.URL[] urls,
java.lang.ClassLoader parent) |
WeavingURLClassLoader(java.net.URL[] classURLs,
java.net.URL[] aspectURLs,
java.lang.ClassLoader parent) |
Modifier and Type | Method and Description |
---|---|
void |
acceptClass(java.lang.String name,
byte[] classBytes,
byte[] weavedBytes)
Accept class generated by WeavingAdaptor.
|
protected void |
addURL(java.net.URL url) |
protected java.lang.Class |
defineClass(java.lang.String name,
byte[] b,
java.security.CodeSource cs)
Override to weave class using WeavingAdaptor
|
java.net.URL[] |
getAspectURLs()
Implement method from WeavingClassLoader
|
protected byte[] |
getBytes(java.lang.String name)
Override to find classes generated by WeavingAdaptor
|
close, findClass
definePackage, findResource, findResources, getPermissions, getResourceAsStream, getURLs, newInstance, newInstance
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
public static final java.lang.String WEAVING_CLASS_PATH
public static final java.lang.String WEAVING_ASPECT_PATH
public WeavingURLClassLoader(java.lang.ClassLoader parent)
public WeavingURLClassLoader(java.net.URL[] urls, java.lang.ClassLoader parent)
public WeavingURLClassLoader(java.net.URL[] classURLs, java.net.URL[] aspectURLs, java.lang.ClassLoader parent)
protected void addURL(java.net.URL url)
addURL
in class ExtensibleURLClassLoader
protected java.lang.Class defineClass(java.lang.String name, byte[] b, java.security.CodeSource cs) throws java.io.IOException
defineClass
in class ExtensibleURLClassLoader
java.io.IOException
protected byte[] getBytes(java.lang.String name) throws java.io.IOException
getBytes
in class ExtensibleURLClassLoader
java.io.IOException
public java.net.URL[] getAspectURLs()
getAspectURLs
in interface WeavingClassLoader
public void acceptClass(java.lang.String name, byte[] classBytes, byte[] weavedBytes)
GeneratedClassHandler
acceptClass
in interface GeneratedClassHandler
name
- class nameclassBytes
- original class bytesweavedBytes
- woven class bytes