protected class UiDelegateAugmenter.AugmentClassAdapter
extends ClassAdapter
Constructor and Description |
---|
UiDelegateAugmenter.AugmentClassAdapter(ClassVisitor cv,
java.util.Set<java.lang.String> existingMethods,
java.util.Set<java.lang.String> existingFields,
java.util.Map<java.lang.String,java.lang.reflect.Method> methodsToAugment)
Creates a new augmentor.
|
Modifier and Type | Method and Description |
---|---|
void |
augmentInstallUIMethod(boolean toSynthOriginal,
java.lang.String className,
java.lang.String superClassName,
java.lang.String functionDesc)
Augments the
installUI method that is assumed to always
have a single parameter. |
void |
augmentSingleParameterMethod(boolean toSynthOriginal,
java.lang.String className,
java.lang.String superClassName,
java.lang.String methodName,
int methodModifiers,
java.lang.String functionDesc)
Augments single-parameter UI method.
|
void |
augmentUpdateMethod(boolean toSynthOriginal,
java.lang.String className,
java.lang.String superClassName,
java.lang.String functionDesc)
Augments the
update method that is assumed to always
have two parameters. |
void |
augmentVoidMethod(boolean toSynthOriginal,
java.lang.String className,
java.lang.String superClassName,
java.lang.String methodName,
int methodModifiers)
Augments void UI method (w/o parameters).
|
void |
visit(int version,
int access,
java.lang.String name,
java.lang.String signature,
java.lang.String superName,
java.lang.String[] interfaces) |
MethodVisitor |
visitMethod(int access,
java.lang.String name,
java.lang.String desc,
java.lang.String signature,
java.lang.String[] exceptions) |
public UiDelegateAugmenter.AugmentClassAdapter(ClassVisitor cv, java.util.Set<java.lang.String> existingMethods, java.util.Set<java.lang.String> existingFields, java.util.Map<java.lang.String,java.lang.reflect.Method> methodsToAugment)
cv
- Class visitor to recreate the non-augmented methods.existingMethods
- Contains all method names.existingFields
- Contains all field names.methodsToAugment
- Contains all methods that will be augmented. Key is
String
, value is Method
.public void visit(int version, int access, java.lang.String name, java.lang.String signature, java.lang.String superName, java.lang.String[] interfaces)
public void augmentVoidMethod(boolean toSynthOriginal, java.lang.String className, java.lang.String superClassName, java.lang.String methodName, int methodModifiers)
toSynthOriginal
- Indication whether we need to create an empty (only call
to super()) implementation.className
- Class name.superClassName
- Super class name (relevant for generating empty
implementation).methodName
- Method name.public void augmentSingleParameterMethod(boolean toSynthOriginal, java.lang.String className, java.lang.String superClassName, java.lang.String methodName, int methodModifiers, java.lang.String functionDesc)
toSynthOriginal
- Indication whether we need to create an empty (only call
to super()) implementation.className
- Class name.superClassName
- Super class name (relevant for generating empty
implementation).methodName
- Method name.functionDesc
- Function signature (using JNI style declaration). Example
for void installUI(JButton button)
:
(Ljavax/swing/JButton;)V
.public void augmentInstallUIMethod(boolean toSynthOriginal, java.lang.String className, java.lang.String superClassName, java.lang.String functionDesc)
installUI
method that is assumed to always
have a single parameter.toSynthOriginal
- Indication whether we need to create an empty (only call
to super()) implementation.className
- Class name.superClassName
- Super class name (relevant for generating empty
implementation).functionDesc
- Function signature (using JNI style declaration). Example
for void installUI(JButton button)
:
(Ljavax/swing/JButton;)V
.public void augmentUpdateMethod(boolean toSynthOriginal, java.lang.String className, java.lang.String superClassName, java.lang.String functionDesc)
update
method that is assumed to always
have two parameters.toSynthOriginal
- Indication whether we need to create an empty (only call
to super()) implementation.className
- Class name.superClassName
- Super class name (relevant for generating empty
implementation).functionDesc
- Function signature (using JNI style declaration). Example
for void installUI(JButton button)
:
(Ljavax/swing/JButton;)V
.public MethodVisitor visitMethod(int access, java.lang.String name, java.lang.String desc, java.lang.String signature, java.lang.String[] exceptions)