public class ProxettaMethodBuilder extends EmptyMethodVisitor
| Modifier and Type | Field and Description |
|---|---|
protected java.util.List<jodd.proxetta.asm.ProxyAspectData> |
aspectList |
protected jodd.asm5.MethodVisitor |
methodVisitor |
protected MethodSignatureVisitor |
msign |
protected boolean |
proxyInfoRequested |
static java.lang.String |
TARGET_CLASS_NAME |
protected jodd.proxetta.asm.TargetMethodData |
tmd |
protected WorkData |
wd |
| Constructor and Description |
|---|
ProxettaMethodBuilder(MethodSignatureVisitor msign,
WorkData wd,
java.util.List<jodd.proxetta.asm.ProxyAspectData> aspectList) |
| Modifier and Type | Method and Description |
|---|---|
protected void |
createFirstChainDelegate_Continue(jodd.proxetta.asm.TargetMethodData tmd)
Continues the creation of the very first method in calling chain that simply delegates invocation to the first proxy method.
|
protected void |
createFirstChainDelegate_Start()
Starts creation of first chain delegate.
|
void |
createProxyMethod(jodd.proxetta.asm.TargetMethodData td)
Creates proxy methods over target method, For each matched proxy, new proxy method is created
by taking advice bytecode and replaces usages of
ProxyTarget. |
jodd.asm5.AnnotationVisitor |
visitAnnotation(java.lang.String desc,
boolean visible)
Copies target method annotations.
|
jodd.asm5.AnnotationVisitor |
visitAnnotationDefault() |
void |
visitEnd()
Finally, builds proxy methods if applied to current method.
|
jodd.asm5.AnnotationVisitor |
visitParameterAnnotation(int parameter,
java.lang.String desc,
boolean visible) |
visitAttribute, visitCode, visitFieldInsn, visitFrame, visitIincInsn, visitInsn, visitInsnAnnotation, visitIntInsn, visitInvokeDynamicInsn, visitJumpInsn, visitLabel, visitLdcInsn, visitLineNumber, visitLocalVariable, visitLocalVariableAnnotation, visitLookupSwitchInsn, visitMaxs, visitMethodInsn, visitMethodInsn, visitMultiANewArrayInsn, visitParameter, visitTableSwitchInsn, visitTryCatchAnnotation, visitTryCatchBlock, visitTypeAnnotation, visitTypeInsn, visitVarInsnpublic static final java.lang.String TARGET_CLASS_NAME
protected final MethodSignatureVisitor msign
protected final WorkData wd
protected final java.util.List<jodd.proxetta.asm.ProxyAspectData> aspectList
protected jodd.proxetta.asm.TargetMethodData tmd
protected jodd.asm5.MethodVisitor methodVisitor
protected boolean proxyInfoRequested
public ProxettaMethodBuilder(MethodSignatureVisitor msign, WorkData wd, java.util.List<jodd.proxetta.asm.ProxyAspectData> aspectList)
public jodd.asm5.AnnotationVisitor visitAnnotation(java.lang.String desc,
boolean visible)
visitAnnotation in class jodd.asm5.MethodVisitorpublic jodd.asm5.AnnotationVisitor visitAnnotationDefault()
visitAnnotationDefault in class jodd.asm5.MethodVisitorpublic jodd.asm5.AnnotationVisitor visitParameterAnnotation(int parameter,
java.lang.String desc,
boolean visible)
visitParameterAnnotation in class jodd.asm5.MethodVisitorpublic void visitEnd()
visitEnd in class jodd.asm5.MethodVisitorprotected void createFirstChainDelegate_Start()
protected void createFirstChainDelegate_Continue(jodd.proxetta.asm.TargetMethodData tmd)
public void createProxyMethod(jodd.proxetta.asm.TargetMethodData td)
ProxyTarget.
Invocation chain example: name -> name$p0 -> name$p1 -> name$p4 -> super.
Copyright © 2003-2013 Jodd Team