BeanDescription implementation used by Jackson.
Although sub-classing is a theoretical possibility there are no known use cases for that, nor is such usage tested or supported. Separation from API is mostly to isolate some implementation details here and keep API simple.
| Modifier and Type | Field and Description |
|---|---|
| protected transient JsonFormat. | _classFormat
Results of introspecting `@JsonFormat` configuration for class, if any. |
| protected final AnnotatedClass | _classInfo
Information collected about the class introspected. |
| protected final MapperConfig | |
| protected Class | |
| protected boolean | |
| protected final AnnotationIntrospector | |
| protected ObjectIdInfo | _objectIdInfo
Details of Object Id to include, if any |
| protected final POJOPropertiesCollector | _propCollector
We will hold a reference to the collector in cases where information is lazily accessed and constructed; properties are only accessed when they are actually needed. |
| protected List | _properties
Properties collected for the POJO; initialized as needed. |
| private static final Class |
| Access | Constructor and Description |
|---|---|
| protected | |
| protected | BasicBeanDescription(MapperConfig<?> config, JavaType type, AnnotatedClass classDef)
Alternate constructor used in cases where property information is not needed, only class info. |
| protected |
| Modifier and Type | Method and Description |
|---|---|
| protected List | |
| public boolean | |
| public AnnotatedMember | findAnyGetter()
Implements abstract tools. Method used to locate the method of introspected class that
implements |
| public AnnotatedMember | findAnySetterAccessor()
Implements abstract tools. Method used to locate a mutator (settable field, or 2-argument set method)
of introspected class that
implements |
| public List | findBackReferences()
Implements abstract tools. Method for locating all back-reference properties (setters, fields) bean has |
| public AnnotatedConstructor | findDefaultConstructor()
Implements abstract tools. Method that will locate the no-arg constructor for this class, if it has one, and that constructor has not been marked as ignorable. |
| public Class | findDefaultViews()
Implements abstract tools. Method for finding out if the POJO specifies default view(s) to use for properties, considering both per-type annotations and global default settings. |
| protected AnnotatedAndMetadata | |
| public Map | |
| public AnnotatedMember | findJsonKeyAccessor()
Overrides tools. Method for locating accessor (readable field, or "getter" method)
that has
|
| public AnnotatedMember | findJsonValueAccessor()
Implements abstract tools. Method for locating accessor (readable field, or "getter" method)
that has
|
| public AnnotatedMethod | findMethod(String name, Class<?>[] paramTypes)
Implements abstract tools.
|
| public List | |
| public BeanPropertyDefinition | |
| public JsonInclude. | findPropertyInclusion(JsonInclude.
Implements abstract tools. Method for determining whether null properties should be written out for a Bean of introspected type. |
| public static BasicBeanDescription | forDeserialization(POJOPropertiesCollector coll)
Factory method to use for constructing an instance to use for building deserializers. |
| public static BasicBeanDescription | forOtherUse(MapperConfig<?> config, JavaType type, AnnotatedClass ac)
Factory method to use for constructing an instance to use for purposes other than building serializers or deserializers; will only have information on class, not on properties. |
| public static BasicBeanDescription | forSerialization(POJOPropertiesCollector coll)
Factory method to use for constructing an instance to use for building serializers. |
| public Annotations | getClassAnnotations()
Implements abstract tools. Method for accessing collection of annotations the bean class has. |
| public AnnotatedClass | getClassInfo()
Implements abstract tools. Method for accessing low-level information about Class this item describes. |
| public List | getConstructors()
Implements abstract tools. Helper method that will return all non-default constructors (that is, constructors that take one or more arguments) this class has. |
| public List | getConstructorsWithMode()
Implements abstract tools. Method similar to |
| public List | getFactoryMethods()
Implements abstract tools. Helper method that will check all static methods of the bean class that seem like factory methods eligible to be used as Creators. |
| public List | getFactoryMethodsWithMode()
Implements abstract tools. Method similar to |
| public Set | getIgnoredPropertyNames()
Implements abstract tools.
|
| public ObjectIdInfo | getObjectIdInfo()
Implements abstract tools. Accessor for getting information about Object Id expected to be used for this POJO type, if any. |
| public PotentialCreators | getPotentialCreators()
Implements abstract tools. Method that is replacing earlier Creator introspection access methods. |
| public boolean | hasKnownClassAnnotations()
Implements abstract tools. Method for checking whether class being described has any annotations recognized by registered annotation introspector. |
| public boolean | |
| public Object | instantiateBean(boolean fixAccess)
Implements abstract tools. Method called to create a "default instance" of the bean, currently only needed for obtaining default field values which may be used for suppressing serialization of fields that have "not changed". |
| protected boolean | |
| public boolean | removeProperty(String propName)
Method that can be used to prune unwanted properties, during construction of serializers and deserializers. |
| public BeanDescription. | supplier()
Implements abstract tools. Method for constructing a supplier for this bean description instance: sometimes needed when code expects supplier, not description instance. |
| _classFormat | back to summary |
|---|---|
| protected transient JsonFormat. Results of introspecting `@JsonFormat` configuration for class, if any.
| |
| _classInfo | back to summary |
|---|---|
| protected final AnnotatedClass _classInfo Information collected about the class introspected. | |
| _config | back to summary |
|---|---|
| protected final MapperConfig<?> _config | |
| _defaultViews | back to summary |
|---|---|
| protected Class<?>[] _defaultViews | |
| _defaultViewsResolved | back to summary |
|---|---|
| protected boolean _defaultViewsResolved | |
| _intr | back to summary |
|---|---|
| protected final AnnotationIntrospector _intr | |
| _objectIdInfo | back to summary |
|---|---|
| protected ObjectIdInfo _objectIdInfo Details of Object Id to include, if any | |
| _propCollector | back to summary |
|---|---|
| protected final POJOPropertiesCollector _propCollector We will hold a reference to the collector in cases where information is lazily accessed and constructed; properties are only accessed when they are actually needed. | |
| _properties | back to summary |
|---|---|
| protected List<BeanPropertyDefinition> _properties Properties collected for the POJO; initialized as needed. | |
| NO_VIEWS | back to summary |
|---|---|
| private static final Class<?>[] NO_VIEWS | |
| BasicBeanDescription | back to summary |
|---|---|
| protected BasicBeanDescription(POJOPropertiesCollector coll, JavaType type, AnnotatedClass classDef) | |
| BasicBeanDescription | back to summary |
|---|---|
| protected BasicBeanDescription(MapperConfig<?> config, JavaType type, AnnotatedClass classDef) Alternate constructor used in cases where property information is not needed, only class info. | |
| BasicBeanDescription | back to summary |
|---|---|
| protected BasicBeanDescription(POJOPropertiesCollector coll) | |
| _properties | back to summary |
|---|---|
| protected List | |
| addProperty | back to summary |
|---|---|
| public boolean addProperty(BeanPropertyDefinition def) | |
| findAnyGetter | back to summary |
|---|---|
| public AnnotatedMember findAnyGetter() throws IllegalArgumentException Implements abstract tools. Method used to locate the method of introspected class that
implements
| |
| findAnySetterAccessor | back to summary |
|---|---|
| public AnnotatedMember findAnySetterAccessor() throws IllegalArgumentException Implements abstract tools. Doc from tools. Method used to locate a mutator (settable field, or 2-argument set method)
of introspected class that
implements
| |
| findBackReferences | back to summary |
|---|---|
| public List Implements abstract tools. Doc from tools. Method for locating all back-reference properties (setters, fields) bean has
| |
| findDefaultConstructor | back to summary |
|---|---|
| public AnnotatedConstructor findDefaultConstructor() Implements abstract tools. Doc from tools. Method that will locate the no-arg constructor for this class, if it has one, and that constructor has not been marked as ignorable.
| |
| findDefaultViews | back to summary |
|---|---|
| public Class Implements abstract tools. Doc from tools. Method for finding out if the POJO specifies default view(s) to use for properties, considering both per-type annotations and global default settings.
| |
| findFactoryMethodMetadata | back to summary |
|---|---|
| protected AnnotatedAndMetadata | |
| findInjectables | back to summary |
|---|---|
| public Map Implements abstract tools.
| |
| findJsonKeyAccessor | back to summary |
|---|---|
| public AnnotatedMember findJsonKeyAccessor() Overrides tools. Doc from tools. Method for locating accessor (readable field, or "getter" method)
that has
| |
| findJsonValueAccessor | back to summary |
|---|---|
| public AnnotatedMember findJsonValueAccessor() Implements abstract tools. Doc from tools. Method for locating accessor (readable field, or "getter" method)
that has
| |
| findMethod | back to summary |
|---|---|
| public AnnotatedMethod findMethod(String name, Class<?>[] paramTypes) Implements abstract tools.
| |
| findProperties | back to summary |
|---|---|
| public List Implements abstract tools.
| |
| findProperty | back to summary |
|---|---|
| public BeanPropertyDefinition findProperty(PropertyName name) | |
| findPropertyInclusion | back to summary |
|---|---|
| public JsonInclude. Implements abstract tools. Method for determining whether null properties should be written out for a Bean of introspected type. This is based on global feature (lowest priority, passed as argument) and per-class annotation (highest priority).
| |
| forDeserialization | back to summary |
|---|---|
| public static BasicBeanDescription forDeserialization(POJOPropertiesCollector coll) Factory method to use for constructing an instance to use for building deserializers. | |
| forOtherUse | back to summary |
|---|---|
| public static BasicBeanDescription forOtherUse(MapperConfig<?> config, JavaType type, AnnotatedClass ac) Factory method to use for constructing an instance to use for purposes other than building serializers or deserializers; will only have information on class, not on properties. | |
| forSerialization | back to summary |
|---|---|
| public static BasicBeanDescription forSerialization(POJOPropertiesCollector coll) Factory method to use for constructing an instance to use for building serializers. | |
| getClassAnnotations | back to summary |
|---|---|
| public Annotations getClassAnnotations() Implements abstract tools. Doc from tools. Method for accessing collection of annotations the bean class has.
| |
| getClassInfo | back to summary |
|---|---|
| public AnnotatedClass getClassInfo() Implements abstract tools. Doc from tools. Method for accessing low-level information about Class this item describes.
| |
| getConstructors | back to summary |
|---|---|
| public List Implements abstract tools. Doc from tools. Helper method that will return all non-default constructors (that is, constructors that take one or more arguments) this class has.
| |
| getConstructorsWithMode | back to summary |
|---|---|
| public List Implements abstract tools. Doc from tools. Method similar to Note that no other filtering (regarding visibility or other annotations) is performed
| |
| getFactoryMethods | back to summary |
|---|---|
| public List Implements abstract tools. Doc from tools. Helper method that will check all static methods of the bean class that seem like factory methods eligible to be used as Creators. This requires that the static method:
| |
| getFactoryMethodsWithMode | back to summary |
|---|---|
| public List Implements abstract tools. Doc from tools. Method similar to
| |
| getIgnoredPropertyNames | back to summary |
|---|---|
| public Set Implements abstract tools.
| |
| getObjectIdInfo | back to summary |
|---|---|
| public ObjectIdInfo getObjectIdInfo() Implements abstract tools. Doc from tools. Accessor for getting information about Object Id expected to be used for this POJO type, if any.
| |
| getPotentialCreators | back to summary |
|---|---|
| public PotentialCreators getPotentialCreators() Implements abstract tools. Doc from tools. Method that is replacing earlier Creator introspection access methods.
| |
| hasKnownClassAnnotations | back to summary |
|---|---|
| public boolean hasKnownClassAnnotations() Implements abstract tools. Doc from tools. Method for checking whether class being described has any annotations recognized by registered annotation introspector.
| |
| hasProperty | back to summary |
|---|---|
| public boolean hasProperty(PropertyName name) | |
| instantiateBean | back to summary |
|---|---|
| public Object instantiateBean(boolean fixAccess) Implements abstract tools. Doc from tools. Method called to create a "default instance" of the bean, currently only needed for obtaining default field values which may be used for suppressing serialization of fields that have "not changed".
| |
| isFactoryMethod | back to summary |
|---|---|
| protected boolean isFactoryMethod(AnnotatedMethod am) | |
| removeProperty | back to summary |
|---|---|
| public boolean removeProperty(String propName) Method that can be used to prune unwanted properties, during construction of serializers and deserializers. Use with utmost care, if at all... | |
| supplier | back to summary |
|---|---|
| public BeanDescription. Implements abstract tools. Doc from tools. Method for constructing a supplier for this bean description instance: sometimes needed when code expects supplier, not description instance.
| |