Package jodd.proxetta.asm
Class InvokeClassBuilder
- java.lang.Object
-
- jodd.asm9.ClassVisitor
-
- jodd.asm.ClassAdapter
-
- jodd.proxetta.asm.InvokeClassBuilder
-
public class InvokeClassBuilder extends ClassAdapter
Invocation replacer class adapter.
-
-
Field Summary
Fields Modifier and Type Field Description protected InvokeAspect[]aspectsprotected java.lang.StringreqProxyClassNameprotected java.lang.Stringsuffixprotected TargetClassInfoReadertargetClassInfoprotected WorkDatawd-
Fields inherited from class jodd.asm9.ClassVisitor
api, cv
-
-
Constructor Summary
Constructors Constructor Description InvokeClassBuilder(ClassVisitor dest, InvokeAspect[] invokeAspects, java.lang.String suffix, java.lang.String reqProxyClassName, TargetClassInfoReader targetClassInfoReader)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description WorkDatagetWorkData()Returns working data.voidvisit(int version, int access, java.lang.String name, java.lang.String signature, java.lang.String superName, java.lang.String[] interfaces)Visits the header of the class.MethodVisitorvisitMethod(int access, java.lang.String name, java.lang.String desc, java.lang.String signature, java.lang.String[] exceptions)Visits a method of the class.-
Methods inherited from class jodd.asm9.ClassVisitor
visitAnnotation, visitAttribute, visitEnd, visitField, visitInnerClass, visitModule, visitNestHost, visitNestMember, visitOuterClass, visitPermittedSubclass, visitRecordComponent, visitSource, visitTypeAnnotation
-
-
-
-
Field Detail
-
wd
protected final WorkData wd
-
aspects
protected final InvokeAspect[] aspects
-
suffix
protected final java.lang.String suffix
-
reqProxyClassName
protected final java.lang.String reqProxyClassName
-
targetClassInfo
protected final TargetClassInfoReader targetClassInfo
-
-
Constructor Detail
-
InvokeClassBuilder
public InvokeClassBuilder(ClassVisitor dest, InvokeAspect[] invokeAspects, java.lang.String suffix, java.lang.String reqProxyClassName, TargetClassInfoReader targetClassInfoReader)
-
-
Method Detail
-
getWorkData
public WorkData getWorkData()
Returns working data.
-
visit
public void visit(int version, int access, java.lang.String name, java.lang.String signature, java.lang.String superName, java.lang.String[] interfaces)Description copied from class:ClassVisitorVisits the header of the class.- Overrides:
visitin classClassVisitor- Parameters:
version- the class version. The minor version is stored in the 16 most significant bits, and the major version in the 16 least significant bits.access- the class's access flags (seeOpcodes). This parameter also indicates if the class is deprecatedOpcodes.ACC_DEPRECATEDor a recordOpcodes.ACC_RECORD.name- the internal name of the class (seeType.getInternalName()).signature- the signature of this class. May be null if the class is not a generic one, and does not extend or implement generic classes or interfaces.superName- the internal of name of the super class (seeType.getInternalName()). For interfaces, the super class isObject. May be null, but only for theObjectclass.interfaces- the internal names of the class's interfaces (seeType.getInternalName()). May be null.
-
visitMethod
public MethodVisitor visitMethod(int access, java.lang.String name, java.lang.String desc, java.lang.String signature, java.lang.String[] exceptions)
Description copied from class:ClassVisitorVisits a method of the class. This method must return a newMethodVisitorinstance (or null) each time it is called, i.e., it should not return a previously returned visitor.- Overrides:
visitMethodin classClassVisitor- Parameters:
access- the method's access flags (seeOpcodes). This parameter also indicates if the method is synthetic and/or deprecated.name- the method's name.desc- the method's descriptor (seeType).signature- the method's signature. May be null if the method parameters, return type and exceptions do not use generic types.exceptions- the internal names of the method's exception classes (seeType.getInternalName()). May be null.- Returns:
- an object to visit the byte code of the method, or null if this class visitor is not interested in visiting the code of this method.
-
-