public class POJOPropertiesCollector extends Object
Modifier and Type | Field and Description |
---|---|
protected AnnotationIntrospector |
_annotationIntrospector |
protected LinkedList<AnnotatedMethod> |
_anyGetters |
protected LinkedList<AnnotatedMethod> |
_anySetters |
protected AnnotatedClass |
_classDef
Low-level introspected class information (methods, fields etc)
|
protected MapperConfig<?> |
_config
Configuration settings
|
protected LinkedList<POJOPropertyBuilder> |
_creatorProperties |
protected boolean |
_forSerialization
True if introspection is done for serialization (giving
precedence for serialization annotations), or not (false, deserialization)
|
protected Set<String> |
_ignoredPropertyNames
Lazily collected list of properties that can be implicitly
ignored during serialization; only updated when collecting
information for deserialization purposes
|
protected Set<String> |
_ignoredPropertyNamesForDeser
Alternate set of property names that have been marked for
explicit ignoral for deserialization: needed to deal with
1.x definition of ignorable with respect to "any setter"
(see [JACKSON-313], [JACKSON-383])
|
protected LinkedHashMap<Object,AnnotatedMember> |
_injectables
Lazily collected list of members that were annotated to
indicate that they represent mutators for deserializer
value injection.
|
protected LinkedList<AnnotatedMethod> |
_jsonValueGetters
Method(s) marked with 'JsonValue' annotation
|
protected LinkedHashMap<String,POJOPropertyBuilder> |
_properties
Set of logical property information collected so far
|
protected JavaType |
_type
Type of POJO for which properties are being collected.
|
protected VisibilityChecker<?> |
_visibilityChecker |
Modifier | Constructor and Description |
---|---|
protected |
POJOPropertiesCollector(MapperConfig<?> config,
boolean forSerialization,
JavaType type,
AnnotatedClass classDef) |
Modifier and Type | Method and Description |
---|---|
protected void |
_addCreators()
Method for collecting basic information on constructor(s) found
|
protected void |
_addFields()
Method for collecting basic information on all fields found
|
protected void |
_addInjectables() |
protected void |
_addMethods()
Method for collecting basic information on all fields found
|
protected void |
_doAddInjectable(Object id,
AnnotatedMember m) |
protected POJOPropertyBuilder |
_property(String implName) |
protected void |
_removeUnwantedProperties()
Method called to get rid of candidate properties that are marked
as ignored, or that are not visible.
|
protected void |
_renameProperties() |
protected void |
_renameUsing(PropertyNamingStrategy naming) |
protected void |
_sortProperties() |
POJOPropertiesCollector |
collect()
Method that orchestrates collection activities, and needs to be called
after creating the instance.
|
AnnotationIntrospector |
getAnnotationIntrospector() |
AnnotatedMethod |
getAnyGetterMethod() |
AnnotatedMethod |
getAnySetterMethod() |
AnnotatedClass |
getClassDef() |
MapperConfig<?> |
getConfig() |
Set<String> |
getIgnoredPropertyNames() |
Set<String> |
getIgnoredPropertyNamesForDeser() |
Map<Object,AnnotatedMember> |
getInjectables() |
AnnotatedMethod |
getJsonValueMethod() |
List<BeanPropertyDefinition> |
getProperties() |
protected Map<String,POJOPropertyBuilder> |
getPropertyMap() |
JavaType |
getType() |
protected void |
reportProblem(String msg) |
protected final MapperConfig<?> _config
protected final boolean _forSerialization
protected final JavaType _type
protected final AnnotatedClass _classDef
protected final VisibilityChecker<?> _visibilityChecker
protected final AnnotationIntrospector _annotationIntrospector
protected final LinkedHashMap<String,POJOPropertyBuilder> _properties
protected LinkedList<POJOPropertyBuilder> _creatorProperties
protected LinkedList<AnnotatedMethod> _anyGetters
protected LinkedList<AnnotatedMethod> _anySetters
protected LinkedList<AnnotatedMethod> _jsonValueGetters
protected Set<String> _ignoredPropertyNames
protected Set<String> _ignoredPropertyNamesForDeser
protected LinkedHashMap<Object,AnnotatedMember> _injectables
protected POJOPropertiesCollector(MapperConfig<?> config, boolean forSerialization, JavaType type, AnnotatedClass classDef)
public MapperConfig<?> getConfig()
public JavaType getType()
public AnnotatedClass getClassDef()
public AnnotationIntrospector getAnnotationIntrospector()
public List<BeanPropertyDefinition> getProperties()
public Map<Object,AnnotatedMember> getInjectables()
public AnnotatedMethod getJsonValueMethod()
public AnnotatedMethod getAnyGetterMethod()
public AnnotatedMethod getAnySetterMethod()
protected Map<String,POJOPropertyBuilder> getPropertyMap()
public POJOPropertiesCollector collect()
protected void _sortProperties()
protected void _addFields()
protected void _addCreators()
protected void _addMethods()
protected void _addInjectables()
protected void _doAddInjectable(Object id, AnnotatedMember m)
protected void _removeUnwantedProperties()
protected void _renameProperties()
protected void _renameUsing(PropertyNamingStrategy naming)
protected void reportProblem(String msg)
protected POJOPropertyBuilder _property(String implName)