org.iqual.chaplin
Class FieldRedirector

java.lang.Object
  extended by org.objectweb.asm.ClassAdapter
      extended by org.iqual.chaplin.FieldRedirector
All Implemented Interfaces:
org.objectweb.asm.ClassVisitor

public class FieldRedirector
extends org.objectweb.asm.ClassAdapter

This is the class which performs the main byte code injection.

Since:
Mar 5, 2009 8:41:21 PM
Author:
Zbynek Slajchrt

Field Summary
static String BOND_ANNOT_DESC
           
static String BYPASS_CTX_ANNOT_DESC
           
static org.objectweb.asm.Type COMPOSITE_MANAGER_DYNACAST_HANDLER_TYPE
           
static String CONTEXT_ATTRIBUTES_DESC
           
static org.objectweb.asm.Type CONTEXT_DYNACAST_HANDLER_TYPE
           
static String CONTEXT_FIELD_DESC
           
static String CONTEXT_FIELD_NAME
           
static String DO_SYNC_ANNOT_DESC
           
static String DYNA_CAST_ANNOT_DESC
           
static String DYNA_CONTEXT_ANNOT_DESC
           
static String FROM_CTX_ANNOT_DESC
           
static String INJECTED_DESC
           
static String META_DESC
           
static String META_FIELD_DESC
           
static String META_FIELD_NAME
           
static String TO_CTX_ANNOT_DESC
           
 
Fields inherited from class org.objectweb.asm.ClassAdapter
cv
 
Constructor Summary
FieldRedirector(org.objectweb.asm.ClassVisitor classVisitor, org.objectweb.asm.tree.ClassNode classNode)
          Constructor
 
Method Summary
static org.objectweb.asm.tree.AnnotationNode findAnnotation(List annots, String annotDesc)
           
 void visit(int version, int access, String name, String signature, String superName, String[] interfaces)
           
 void visitEnd()
           
 org.objectweb.asm.FieldVisitor visitField(int access, String name, String desc, String signature, Object value)
           
 void visitInnerClass(String name, String outerName, String innerName, int access)
           
 org.objectweb.asm.MethodVisitor visitMethod(int access, String name, String desc, String signature, String[] exceptions)
           
 
Methods inherited from class org.objectweb.asm.ClassAdapter
visitAnnotation, visitAttribute, visitOuterClass, visitSource
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

BYPASS_CTX_ANNOT_DESC

public static String BYPASS_CTX_ANNOT_DESC

FROM_CTX_ANNOT_DESC

public static String FROM_CTX_ANNOT_DESC

TO_CTX_ANNOT_DESC

public static String TO_CTX_ANNOT_DESC

DYNA_CAST_ANNOT_DESC

public static String DYNA_CAST_ANNOT_DESC

DYNA_CONTEXT_ANNOT_DESC

public static String DYNA_CONTEXT_ANNOT_DESC

DO_SYNC_ANNOT_DESC

public static String DO_SYNC_ANNOT_DESC

BOND_ANNOT_DESC

public static String BOND_ANNOT_DESC

CONTEXT_ATTRIBUTES_DESC

public static String CONTEXT_ATTRIBUTES_DESC

INJECTED_DESC

public static String INJECTED_DESC

META_DESC

public static String META_DESC

CONTEXT_DYNACAST_HANDLER_TYPE

public static org.objectweb.asm.Type CONTEXT_DYNACAST_HANDLER_TYPE

COMPOSITE_MANAGER_DYNACAST_HANDLER_TYPE

public static org.objectweb.asm.Type COMPOSITE_MANAGER_DYNACAST_HANDLER_TYPE

CONTEXT_FIELD_NAME

public static final String CONTEXT_FIELD_NAME
See Also:
Constant Field Values

CONTEXT_FIELD_DESC

public static String CONTEXT_FIELD_DESC

META_FIELD_NAME

public static final String META_FIELD_NAME
See Also:
Constant Field Values

META_FIELD_DESC

public static String META_FIELD_DESC
Constructor Detail

FieldRedirector

public FieldRedirector(org.objectweb.asm.ClassVisitor classVisitor,
                       org.objectweb.asm.tree.ClassNode classNode)
Constructor

Parameters:
classVisitor -
classNode -
Method Detail

visitInnerClass

public void visitInnerClass(String name,
                            String outerName,
                            String innerName,
                            int access)
Specified by:
visitInnerClass in interface org.objectweb.asm.ClassVisitor
Overrides:
visitInnerClass in class org.objectweb.asm.ClassAdapter

findAnnotation

public static org.objectweb.asm.tree.AnnotationNode findAnnotation(List annots,
                                                                   String annotDesc)

visit

public void visit(int version,
                  int access,
                  String name,
                  String signature,
                  String superName,
                  String[] interfaces)
Specified by:
visit in interface org.objectweb.asm.ClassVisitor
Overrides:
visit in class org.objectweb.asm.ClassAdapter

visitEnd

public void visitEnd()
Specified by:
visitEnd in interface org.objectweb.asm.ClassVisitor
Overrides:
visitEnd in class org.objectweb.asm.ClassAdapter

visitMethod

public org.objectweb.asm.MethodVisitor visitMethod(int access,
                                                   String name,
                                                   String desc,
                                                   String signature,
                                                   String[] exceptions)
Specified by:
visitMethod in interface org.objectweb.asm.ClassVisitor
Overrides:
visitMethod in class org.objectweb.asm.ClassAdapter

visitField

public org.objectweb.asm.FieldVisitor visitField(int access,
                                                 String name,
                                                 String desc,
                                                 String signature,
                                                 Object value)
Specified by:
visitField in interface org.objectweb.asm.ClassVisitor
Overrides:
visitField in class org.objectweb.asm.ClassAdapter


Copyright © 2009 iquality.org. All Rights Reserved.