public class POJOPropertiesCollector extends Object
Modifier and Type | Field and Description |
---|---|
protected AnnotationIntrospector |
_annotationIntrospector |
protected LinkedList<AnnotatedMember> |
_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 HashSet<String> |
_ignoredPropertyNames
Lazily collected list of properties that can be implicitly
ignored during serialization; only updated when collecting
information for deserialization purposes
|
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 String |
_mutatorPrefix
Prefix used by auto-detected mutators ("setters"): usually "set",
but differs for builder objects ("with" by default).
|
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,
String mutatorPrefix) |
Modifier and Type | Method and Description |
---|---|
protected void |
_addCreatorParam(AnnotatedParameter param) |
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 |
_addGetterMethod(AnnotatedMethod m,
AnnotationIntrospector ai) |
protected void |
_addInjectables() |
protected void |
_addMethods()
Method for collecting basic information on all fields found
|
protected void |
_addSetterMethod(AnnotatedMethod m,
AnnotationIntrospector ai) |
protected void |
_doAddInjectable(Object id,
AnnotatedMember m) |
protected POJOPropertyBuilder |
_property(PropertyName name) |
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 |
_renameWithWrappers() |
protected void |
_sortProperties() |
protected void |
_updateCreatorProperty(POJOPropertyBuilder prop,
List<POJOPropertyBuilder> creatorProperties) |
POJOPropertiesCollector |
collect()
Method that orchestrates collection activities, and needs to be called
after creating the instance.
|
Class<?> |
findPOJOBuilderClass()
Method for finding Class to use as POJO builder, if any.
|
AnnotationIntrospector |
getAnnotationIntrospector() |
AnnotatedMember |
getAnyGetter() |
AnnotatedMethod |
getAnySetterMethod() |
AnnotatedClass |
getClassDef() |
MapperConfig<?> |
getConfig() |
Set<String> |
getIgnoredPropertyNames()
Accessor for set of properties that are explicitly marked to be ignored
via per-property markers (but NOT class annotations).
|
Map<Object,AnnotatedMember> |
getInjectables() |
AnnotatedMethod |
getJsonValueMethod() |
ObjectIdInfo |
getObjectIdInfo()
Accessor to find out whether type specified requires inclusion
of Object Identifier.
|
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 String _mutatorPrefix
protected final LinkedHashMap<String,POJOPropertyBuilder> _properties
protected LinkedList<POJOPropertyBuilder> _creatorProperties
protected LinkedList<AnnotatedMember> _anyGetters
protected LinkedList<AnnotatedMethod> _anySetters
protected LinkedList<AnnotatedMethod> _jsonValueGetters
protected HashSet<String> _ignoredPropertyNames
protected LinkedHashMap<Object,AnnotatedMember> _injectables
protected POJOPropertiesCollector(MapperConfig<?> config, boolean forSerialization, JavaType type, AnnotatedClass classDef, String mutatorPrefix)
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 AnnotatedMember getAnyGetter()
public AnnotatedMethod getAnySetterMethod()
public Set<String> getIgnoredPropertyNames()
public ObjectIdInfo getObjectIdInfo()
public Class<?> findPOJOBuilderClass()
protected Map<String,POJOPropertyBuilder> getPropertyMap()
public POJOPropertiesCollector collect()
protected void _sortProperties()
protected void _addFields()
protected void _addCreators()
protected void _addCreatorParam(AnnotatedParameter param)
protected void _addMethods()
protected void _addGetterMethod(AnnotatedMethod m, AnnotationIntrospector ai)
protected void _addSetterMethod(AnnotatedMethod m, AnnotationIntrospector ai)
protected void _addInjectables()
protected void _doAddInjectable(Object id, AnnotatedMember m)
protected void _removeUnwantedProperties()
protected void _renameProperties()
protected void _renameUsing(PropertyNamingStrategy naming)
protected void _renameWithWrappers()
protected void reportProblem(String msg)
protected POJOPropertyBuilder _property(PropertyName name)
protected POJOPropertyBuilder _property(String implName)
protected void _updateCreatorProperty(POJOPropertyBuilder prop, List<POJOPropertyBuilder> creatorProperties)
Copyright © 2014 FasterXML. All Rights Reserved.