Top Description Fields Constructors Methods
com.fasterxml.jackson.module.afterburner.ser

public Class PropertyAccessorCollector

extends DynamicPropertyAccessorBase
Class Inheritance
Imports
java.lang.reflect.Method, java.util.*, org.objectweb.asm.*, com.fasterxml.jackson.databind.introspect.AnnotatedField, com.fasterxml.jackson.databind.ser.BeanPropertyWriter, com.fasterxml.jackson.module.afterburner.util.ClassName, .DynamicPropertyAccessorBase, .MyClassLoader

Simple collector used to keep track of properties for which code-generated accessors are needed.

Field Summary

Modifier and TypeField and Description
private final List<BooleanFieldPropertyWriter>
private final List<BooleanMethodPropertyWriter>
private final List<IntFieldPropertyWriter>
private final List<IntMethodPropertyWriter>
private final List<LongFieldPropertyWriter>
private final List<LongMethodPropertyWriter>
private final List<ObjectFieldPropertyWriter>
private final List<ObjectMethodPropertyWriter>
private final List<StringFieldPropertyWriter>
private final List<StringMethodPropertyWriter>
private final Class<?>
private final String
private static final Type
private static final Type
Inherited from com.fasterxml.jackson.module.afterburner.util.DynamicPropertyAccessorBase:
_accessorCountALL_INT_CONSTS

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
private <T extends OptimizedBeanPropertyWriter<T>> void
_addFields(ClassWriter cw, List<T> props, String methodName, Type returnType, int returnOpcode)

private <T extends OptimizedBeanPropertyWriter<T>> void
_addFieldsUsingIf(MethodVisitor mv, List<T> props, int returnOpcode)

private <T extends OptimizedBeanPropertyWriter<T>> void
_addFieldsUsingSwitch(MethodVisitor mv, List<T> props, int returnOpcode)

private <T extends OptimizedBeanPropertyWriter<T>> void
_addGetters(ClassWriter cw, List<T> props, String methodName, Type returnType, int returnOpcode)

private <T extends OptimizedBeanPropertyWriter<T>> void
_addGettersUsingIf(MethodVisitor mv, List<T> props, int returnOpcode)

private <T extends OptimizedBeanPropertyWriter<T>> void
_addGettersUsingSwitch(MethodVisitor mv, List<T> props, int returnOpcode)

private void
private void
public BooleanFieldPropertyWriter
public BooleanMethodPropertyWriter
public IntFieldPropertyWriter
public IntMethodPropertyWriter
public LongFieldPropertyWriter
public LongMethodPropertyWriter
public ObjectFieldPropertyWriter
public ObjectMethodPropertyWriter
public StringFieldPropertyWriter
public StringMethodPropertyWriter
public BeanPropertyAccessor
public Class<?>
Inherited from com.fasterxml.jackson.module.afterburner.util.DynamicPropertyAccessorBase:
_addgenerateExceptioninternalClassNameisEmptyisInterfaceMethod

Field Detail

_booleanFieldsback to summary
private final List<BooleanFieldPropertyWriter> _booleanFields
_booleanGettersback to summary
private final List<BooleanMethodPropertyWriter> _booleanGetters
_intFieldsback to summary
private final List<IntFieldPropertyWriter> _intFields
_intGettersback to summary
private final List<IntMethodPropertyWriter> _intGetters
_longFieldsback to summary
private final List<LongFieldPropertyWriter> _longFields
_longGettersback to summary
private final List<LongMethodPropertyWriter> _longGetters
_objectFieldsback to summary
private final List<ObjectFieldPropertyWriter> _objectFields
_objectGettersback to summary
private final List<ObjectMethodPropertyWriter> _objectGetters
_stringFieldsback to summary
private final List<StringFieldPropertyWriter> _stringFields
_stringGettersback to summary
private final List<StringMethodPropertyWriter> _stringGetters
beanClassback to summary
private final Class<?> beanClass
beanClassNameback to summary
private final String beanClassName
OBJECT_TYPEback to summary
private static final Type OBJECT_TYPE
STRING_TYPEback to summary
private static final Type STRING_TYPE

Constructor Detail

PropertyAccessorCollectorback to summary
public PropertyAccessorCollector(Class<?> beanClass)

Method Detail

_addFieldsback to summary
private <T extends OptimizedBeanPropertyWriter<T>> void _addFields(ClassWriter cw, List<T> props, String methodName, Type returnType, int returnOpcode)
_addFieldsUsingIfback to summary
private <T extends OptimizedBeanPropertyWriter<T>> void _addFieldsUsingIf(MethodVisitor mv, List<T> props, int returnOpcode)
_addFieldsUsingSwitchback to summary
private <T extends OptimizedBeanPropertyWriter<T>> void _addFieldsUsingSwitch(MethodVisitor mv, List<T> props, int returnOpcode)
_addGettersback to summary
private <T extends OptimizedBeanPropertyWriter<T>> void _addGetters(ClassWriter cw, List<T> props, String methodName, Type returnType, int returnOpcode)
_addGettersUsingIfback to summary
private <T extends OptimizedBeanPropertyWriter<T>> void _addGettersUsingIf(MethodVisitor mv, List<T> props, int returnOpcode)
_addGettersUsingSwitchback to summary
private <T extends OptimizedBeanPropertyWriter<T>> void _addGettersUsingSwitch(MethodVisitor mv, List<T> props, int returnOpcode)
_addSingleFieldback to summary
private void _addSingleField(MethodVisitor mv, OptimizedBeanPropertyWriter<?> prop, int returnOpcode)
_addSingleGetterback to summary
private void _addSingleGetter(MethodVisitor mv, OptimizedBeanPropertyWriter<?> prop, int returnOpcode)
addBooleanFieldback to summary
public BooleanFieldPropertyWriter addBooleanField(BeanPropertyWriter bpw)
addBooleanGetterback to summary
public BooleanMethodPropertyWriter addBooleanGetter(BeanPropertyWriter bpw)
addIntFieldback to summary
public IntFieldPropertyWriter addIntField(BeanPropertyWriter bpw)
addIntGetterback to summary
public IntMethodPropertyWriter addIntGetter(BeanPropertyWriter bpw)
addLongFieldback to summary
public LongFieldPropertyWriter addLongField(BeanPropertyWriter bpw)
addLongGetterback to summary
public LongMethodPropertyWriter addLongGetter(BeanPropertyWriter bpw)
addObjectFieldback to summary
public ObjectFieldPropertyWriter addObjectField(BeanPropertyWriter bpw)
addObjectGetterback to summary
public ObjectMethodPropertyWriter addObjectGetter(BeanPropertyWriter bpw)
addStringFieldback to summary
public StringFieldPropertyWriter addStringField(BeanPropertyWriter bpw)
addStringGetterback to summary
public StringMethodPropertyWriter addStringGetter(BeanPropertyWriter bpw)
findAccessorback to summary
public BeanPropertyAccessor findAccessor(MyClassLoader classLoader)
generateAccessorClassback to summary
public Class<?> generateAccessorClass(MyClassLoader classLoader, ClassName baseName)