public class OptimizedFieldAccessTransformer extends FieldAccessTransformer
Modifier and Type | Class and Description |
---|---|
protected class |
OptimizedFieldAccessTransformer.OptimizedFieldAccessExprEditor |
FieldAccessTransformer.FieldAccessExprEditor
GET_INDEX, SET_INDEX, transformations, wrapper
Constructor and Description |
---|
OptimizedFieldAccessTransformer(Instrumentor instrumentor) |
Modifier and Type | Method and Description |
---|---|
protected void |
doBuildFieldWrappers(javassist.CtClass clazz,
javassist.CtField field,
int fieldIndex,
boolean shouldReplaceArrayAccess,
JoinpointClassification classificationGet,
JoinpointClassification classificationSet) |
protected String |
getWrapperBody(javassist.CtClass clazz,
javassist.CtField field,
boolean get,
int index)
Returns the body of the optimized wrapper method.
|
protected void |
replaceFieldAccessInternally(javassist.CtClass clazz,
javassist.CtField field,
boolean doGet,
boolean doSet,
int index)
This function replaces internal field accesses with bytecode hooks into framework
todo this must do it for inherited protected/public fields as well
|
addFieldReadInfoFieldWithAccessors, addFieldReadInfoFieldWithAccessors, addFieldWriteInfoField, addFieldWriteInfoField, addInfoAsWeakReference, buildFieldWrappers, buildReadWrapperPlaceHolder, buildWrapperPlaceHolders, buildWriteWrapperPlaceHolder, codeConverted, fieldInfoFromWeakReference, fieldOffset, fieldRead, fieldWrite, getArrayWriteRegistration, getFieldReadInfoFieldName, getFieldWriteInfoFieldName, getStaticModifiers, getWrapperReadMethod, getWrapperWriteMethod, isPrepared, markInfoAsSynthetic, replaceFieldAccess, unwrap, wrap
public OptimizedFieldAccessTransformer(Instrumentor instrumentor)
protected void doBuildFieldWrappers(javassist.CtClass clazz, javassist.CtField field, int fieldIndex, boolean shouldReplaceArrayAccess, JoinpointClassification classificationGet, JoinpointClassification classificationSet) throws javassist.NotFoundException, javassist.CannotCompileException
doBuildFieldWrappers
in class FieldAccessTransformer
javassist.NotFoundException
javassist.CannotCompileException
protected String getWrapperBody(javassist.CtClass clazz, javassist.CtField field, boolean get, int index) throws javassist.NotFoundException, javassist.CannotCompileException
getWrapperBody
in class FieldAccessTransformer
clazz
- the class declaring field
.field
- the field whose joinpoint wrapper body will be returned.get
- indicates if the wrapper is a field read wrapper or a field
write wrapper.index
- the field
index.javassist.NotFoundException
javassist.CannotCompileException
protected void replaceFieldAccessInternally(javassist.CtClass clazz, javassist.CtField field, boolean doGet, boolean doSet, int index) throws javassist.CannotCompileException
FieldAccessTransformer
replaceFieldAccessInternally
in class FieldAccessTransformer
javassist.CannotCompileException
Copyright © 2013 JBoss, a division of Red Hat, Inc.. All Rights Reserved.