| Package | Description |
|---|---|
| io.ebean.enhance.asm |
Provides a small and fast bytecode manipulation framework.
|
| io.ebean.enhance.asm.commons |
Provides some useful class and method adapters.
|
| io.ebean.enhance.common | |
| io.ebean.enhance.entity | |
| io.ebean.enhance.querybean | |
| io.ebean.enhance.transactional |
| Modifier and Type | Method and Description |
|---|---|
MethodVisitor |
ClassVisitor.visitMethod(int access,
String name,
String descriptor,
String signature,
String[] exceptions)
Visits a method of the class.
|
MethodVisitor |
ClassWriter.visitMethod(int access,
String name,
String descriptor,
String signature,
String[] exceptions) |
| Constructor and Description |
|---|
MethodVisitor(int api,
MethodVisitor methodVisitor)
Constructs a new
MethodVisitor. |
| Modifier and Type | Class and Description |
|---|---|
class |
AdviceAdapter
A
MethodVisitor to insert before, after and around advices in methods and constructors. |
class |
AnalyzerAdapter
A
MethodVisitor that keeps track of stack map frame changes between AnalyzerAdapter.visitFrame(int, int, Object[], int, Object[]) calls. |
class |
CodeSizeEvaluator
A
MethodVisitor that approximates the size of the methods it visits. |
class |
GeneratorAdapter
A
MethodVisitor with convenient methods to generate code. |
class |
InstructionAdapter
A
MethodVisitor providing a more detailed API to generate and transform instructions. |
class |
LocalVariablesSorter
A
MethodVisitor that renumbers local variables in their order of appearance. |
class |
MethodRemapper
A
MethodVisitor that remaps types with a Remapper. |
| Modifier and Type | Method and Description |
|---|---|
MethodVisitor |
ClassRemapper.visitMethod(int access,
String name,
String descriptor,
String signature,
String[] exceptions) |
MethodVisitor |
SerialVersionUIDAdder.visitMethod(int access,
String name,
String descriptor,
String signature,
String[] exceptions) |
MethodVisitor |
StaticInitMerger.visitMethod(int access,
String name,
String descriptor,
String signature,
String[] exceptions) |
| Constructor and Description |
|---|
AnalyzerAdapter(String owner,
int access,
String name,
String descriptor,
MethodVisitor methodVisitor)
Constructs a new
AnalyzerAdapter. |
CodeSizeEvaluator(MethodVisitor methodVisitor) |
GeneratorAdapter(int access,
Method method,
MethodVisitor methodVisitor)
Constructs a new
GeneratorAdapter. |
GeneratorAdapter(MethodVisitor methodVisitor,
int access,
String name,
String descriptor)
Constructs a new
GeneratorAdapter. |
InstructionAdapter(MethodVisitor methodVisitor)
Constructs a new
InstructionAdapter. |
LocalVariablesSorter(int access,
String descriptor,
MethodVisitor methodVisitor)
Constructs a new
LocalVariablesSorter. |
MethodRemapper(MethodVisitor methodVisitor,
Remapper remapper)
Constructs a new
MethodRemapper. |
| Modifier and Type | Method and Description |
|---|---|
MethodVisitor |
ClassMeta.createMethodVisitor(MethodVisitor mv,
int access,
String name,
String desc) |
MethodVisitor |
ClassMetaReaderVisitor.visitMethod(int access,
String name,
String desc,
String signature,
String[] exceptions)
Look for equals/hashCode implementations.
|
MethodVisitor |
DetectEnhancement.visitMethod(int access,
String name,
String desc,
String signature,
String[] exceptions)
Visit the methods specifically looking for method level transactional
annotations.
|
| Modifier and Type | Method and Description |
|---|---|
MethodVisitor |
ClassMeta.createMethodVisitor(MethodVisitor mv,
int access,
String name,
String desc) |
static void |
VisitUtil.visitIntInsn(MethodVisitor mv,
int value)
Helper method for visiting an int value.
|
| Modifier and Type | Class and Description |
|---|---|
class |
ConstructorAdapter
Modify the constructor to additionally initialise the entityBeanIntercept
field.
|
class |
MethodFieldAdapter
Changes the method code from using PUTFIELD and GETFIELD to calling our
special field interception methods.
|
class |
MethodStaticInitAdapter |
| Modifier and Type | Method and Description |
|---|---|
MethodVisitor |
ClassAdapterEntity.visitMethod(int access,
String name,
String desc,
String signature,
String[] exceptions)
Replace the method code with field interception.
|
| Modifier and Type | Method and Description |
|---|---|
static void |
IndexFieldWeaver.addPropertiesInit(MethodVisitor mv,
ClassMeta classMeta) |
void |
FieldMeta.appendCompare(MethodVisitor mv,
ClassMeta classMeta)
Append compare instructions if its a long, float or double.
|
void |
FieldMeta.appendGetPrimitiveIdValue(MethodVisitor mv,
ClassMeta classMeta)
Append byte code to return the Id value (for primitives).
|
void |
FieldMeta.appendSwitchGet(MethodVisitor mv,
ClassMeta classMeta,
boolean intercept)
As part of the switch statement to read the fields generate the get code.
|
void |
FieldMeta.appendSwitchSet(MethodVisitor mv,
ClassMeta classMeta,
boolean intercept) |
void |
FieldMeta.appendValueOf(MethodVisitor mv)
Append code to get the Object value of a primitive.
|
void |
DeferredCode.write(MethodVisitor mv)
Write the bytecode to the method visitor.
|
| Constructor and Description |
|---|
ConstructorAdapter(MethodVisitor mv,
ClassMeta meta,
String constructorDesc) |
MethodFieldAdapter(MethodVisitor mv,
ClassMeta meta,
String methodDescription) |
MethodStaticInitAdapter(MethodVisitor mv,
ClassMeta classMeta) |
| Modifier and Type | Class and Description |
|---|---|
class |
BaseConstructorAdapter
Changes the existing constructor removing all the existing code to be replaced via visitCode() implementation.
|
class |
MethodAdapter
Adapter that changes GETFIELD calls to type query beans to instead use the generated
'property access' methods.
|
class |
TypeQueryAssocBasicConstructor
Changes the existing constructor to remove all the field initialisation as these are going to be
initialised lazily by calls to our generated methods.
|
class |
TypeQueryAssocMainConstructor
Changes the existing constructor to remove all the field initialisation as these are going to be
initialised lazily by calls to our generated methods.
|
class |
TypeQueryConstructorAdapter
Changes the existing constructor to remove all the field initialisation as these are going to be
initialised lazily by calls to our generated methods.
|
class |
TypeQueryConstructorForAlias
Overrides the constructor to initialise all the fields (for use with 'Alias' select()/fetch() use).
|
| Modifier and Type | Method and Description |
|---|---|
MethodVisitor |
TypeQueryClassAdapter.visitMethod(int access,
String name,
String desc,
String signature,
String[] exceptions) |
| Modifier and Type | Method and Description |
|---|---|
void |
FieldInfo.writeFieldInit(MethodVisitor mv)
Initialise the field (used by 'Alias' constructor).
|
| Constructor and Description |
|---|
MethodAdapter(MethodVisitor mv,
EnhanceContext enhanceContext,
ClassInfo classInfo,
String methodName) |
| Modifier and Type | Class and Description |
|---|---|
class |
FinallyAdapter
FinallyAdapter adjusted to support both non-finally use (for ConstructorMethodAdapter)
and finally use (for MethodAdapter that also enhances transactional methods)
|
class |
StaticInitAdapter
Enhance an existing static initialisation block with a call to our static
_$initProfileLocations() method.
|
| Modifier and Type | Method and Description |
|---|---|
MethodVisitor |
ClassAdapterTransactional.visitMethod(int access,
String name,
String desc,
String signature,
String[] exceptions)
Visit the methods specifically looking for method level transactional
annotations.
|
| Constructor and Description |
|---|
FinallyAdapter(int api,
MethodVisitor mv,
int acc,
String name,
String desc) |
Copyright © 2019. All rights reserved.