|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectjodd.asm.EmptyMethodVisitor
jodd.proxetta.asm.ProxettaMethodBuilder
public class ProxettaMethodBuilder
| Field Summary | |
|---|---|
protected java.util.List<jodd.proxetta.asm.ProxyAspectData> |
aspectList
|
protected MethodSignatureVisitor |
msign
|
protected org.objectweb.asm.MethodVisitor |
mv
|
static java.lang.String |
TARGET_CLASS_NAME
|
protected jodd.proxetta.asm.TargetMethodData |
tmd
|
protected jodd.proxetta.asm.WorkData |
wd
|
| Constructor Summary | |
|---|---|
ProxettaMethodBuilder(MethodSignatureVisitor msign,
jodd.proxetta.asm.WorkData wd,
java.util.List<jodd.proxetta.asm.ProxyAspectData> aspectList)
|
|
| Method Summary | |
|---|---|
protected void |
createFirstChainDelegate_Continue(jodd.proxetta.asm.TargetMethodData td)
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. |
org.objectweb.asm.AnnotationVisitor |
visitAnnotation(java.lang.String desc,
boolean visible)
Copies target method annotations |
org.objectweb.asm.AnnotationVisitor |
visitAnnotationDefault()
Visits the default value of this annotation interface method. |
void |
visitEnd()
Finally, builds proxy methods if applied to current method. |
org.objectweb.asm.AnnotationVisitor |
visitParameterAnnotation(int parameter,
java.lang.String desc,
boolean visible)
Visits an annotation of a parameter this method. |
| Methods inherited from class jodd.asm.EmptyMethodVisitor |
|---|
visitAttribute, visitCode, visitFieldInsn, visitFrame, visitIincInsn, visitInsn, visitIntInsn, visitJumpInsn, visitLabel, visitLdcInsn, visitLineNumber, visitLocalVariable, visitLookupSwitchInsn, visitMaxs, visitMethodInsn, visitMultiANewArrayInsn, visitTableSwitchInsn, visitTryCatchBlock, visitTypeInsn, visitVarInsn |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static final java.lang.String TARGET_CLASS_NAME
protected final MethodSignatureVisitor msign
protected final jodd.proxetta.asm.WorkData wd
protected final java.util.List<jodd.proxetta.asm.ProxyAspectData> aspectList
protected jodd.proxetta.asm.TargetMethodData tmd
protected org.objectweb.asm.MethodVisitor mv
| Constructor Detail |
|---|
public ProxettaMethodBuilder(MethodSignatureVisitor msign,
jodd.proxetta.asm.WorkData wd,
java.util.List<jodd.proxetta.asm.ProxyAspectData> aspectList)
| Method Detail |
|---|
public org.objectweb.asm.AnnotationVisitor visitAnnotation(java.lang.String desc,
boolean visible)
visitAnnotation in interface org.objectweb.asm.MethodVisitorvisitAnnotation in class EmptyMethodVisitordesc - the class descriptor of the annotation class.visible - true if the annotation is visible at runtime.
null if
this visitor is not interested in visiting this annotation.public org.objectweb.asm.AnnotationVisitor visitAnnotationDefault()
EmptyMethodVisitor
visitAnnotationDefault in interface org.objectweb.asm.MethodVisitorvisitAnnotationDefault in class EmptyMethodVisitornull if this visitor
is not interested in visiting this default value. The 'name'
parameters passed to the methods of this annotation visitor are
ignored. Moreover, exacly one visit method must be called on this
annotation visitor, followed by visitEnd.
public org.objectweb.asm.AnnotationVisitor visitParameterAnnotation(int parameter,
java.lang.String desc,
boolean visible)
EmptyMethodVisitor
visitParameterAnnotation in interface org.objectweb.asm.MethodVisitorvisitParameterAnnotation in class EmptyMethodVisitorparameter - the parameter index.desc - the class descriptor of the annotation class.visible - true if the annotation is visible at runtime.
null if
this visitor is not interested in visiting this annotation.public void visitEnd()
visitEnd in interface org.objectweb.asm.MethodVisitorvisitEnd in class EmptyMethodVisitorprotected void createFirstChainDelegate_Start()
protected void createFirstChainDelegate_Continue(jodd.proxetta.asm.TargetMethodData td)
public void createProxyMethod(jodd.proxetta.asm.TargetMethodData td)
ProxyTarget.
Invocation chain example: name -> name$p0 -> name$p1 -> name$p4 -> super
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||