public static class MethodDelegate.Generator extends AbstractClassGenerator
AbstractClassGenerator.ClassLoaderData, AbstractClassGenerator.Source
Modifier and Type | Field and Description |
---|---|
private java.lang.Class |
iface |
private static org.objectweb.asm.Type |
METHOD_DELEGATE |
private java.lang.String |
methodName |
private static Signature |
NEW_INSTANCE |
private static AbstractClassGenerator.Source |
SOURCE |
private java.lang.Object |
target |
private java.lang.Class |
targetClass |
Constructor and Description |
---|
Generator() |
Modifier and Type | Method and Description |
---|---|
MethodDelegate |
create() |
protected java.lang.Object |
firstInstance(java.lang.Class type) |
void |
generateClass(org.objectweb.asm.ClassVisitor v) |
protected java.lang.ClassLoader |
getDefaultClassLoader() |
protected java.security.ProtectionDomain |
getProtectionDomain()
Returns the protection domain to use when defining the class.
|
protected java.lang.Object |
nextInstance(java.lang.Object instance) |
void |
setInterface(java.lang.Class iface) |
void |
setMethodName(java.lang.String methodName) |
void |
setTarget(java.lang.Object target) |
void |
setTargetClass(java.lang.Class targetClass) |
create, generate, getAttemptLoad, getClassLoader, getClassName, getCurrent, getNamingPolicy, getStrategy, getUseCache, setAttemptLoad, setClassLoader, setNamePrefix, setNamingPolicy, setStrategy, setUseCache, unwrapCachedValue, wrapCachedClass
private static final AbstractClassGenerator.Source SOURCE
private static final org.objectweb.asm.Type METHOD_DELEGATE
private static final Signature NEW_INSTANCE
private java.lang.Object target
private java.lang.Class targetClass
private java.lang.String methodName
private java.lang.Class iface
public void setTarget(java.lang.Object target)
public void setTargetClass(java.lang.Class targetClass)
public void setMethodName(java.lang.String methodName)
public void setInterface(java.lang.Class iface)
protected java.lang.ClassLoader getDefaultClassLoader()
getDefaultClassLoader
in class AbstractClassGenerator
protected java.security.ProtectionDomain getProtectionDomain()
AbstractClassGenerator
Default implementation returns null
for using a default protection domain. Sub-classes may
override to use a more specific protection domain.
getProtectionDomain
in class AbstractClassGenerator
null
for using a default)public MethodDelegate create()
protected java.lang.Object firstInstance(java.lang.Class type)
firstInstance
in class AbstractClassGenerator
protected java.lang.Object nextInstance(java.lang.Object instance)
nextInstance
in class AbstractClassGenerator
public void generateClass(org.objectweb.asm.ClassVisitor v) throws java.lang.NoSuchMethodException
java.lang.NoSuchMethodException