## Uses of Class
com.fasterxml.jackson.databind.introspect.BeanPropertyDefinition

Packages that use BeanPropertyDefinition
Package | Description
--- | ---
com.fasterxml.jackson.databind | Basic data binding (mapping) functionality that allows for reading JSON content into Java Objects (POJOs) and JSON Trees (`JsonNode`), as well as writing Java Objects and trees as JSON.
com.fasterxml.jackson.databind.deser | Contains implementation classes of deserialization part of data binding.
com.fasterxml.jackson.databind.deser.impl | Contains those implementation classes of deserialization part of data binding that are not considered part of public or semi-public interfaces.
com.fasterxml.jackson.databind.introspect | Functionality needed for Bean introspection, required for detecting accessors and mutators for Beans, as well as locating and handling method annotations.
com.fasterxml.jackson.databind.ser | Contains implementation classes of serialization part of data binding.
com.fasterxml.jackson.databind.ser.impl | Contains implementation classes of serialization part of data binding.
com.fasterxml.jackson.databind.util | Utility classes for Mapper package.

### Uses of BeanPropertyDefinition in com.fasterxml.jackson.databind

Methods in com.fasterxml.jackson.databind that return types with arguments of type BeanPropertyDefinition
Modifier and Type | Method and Description
--- | ---
`abstract List<BeanPropertyDefinition>` | BeanDescription.`findProperties()`

Methods in com.fasterxml.jackson.databind with parameters of type BeanPropertyDefinition
Modifier and Type | Method and Description
--- | ---
`<T> T` | SerializerProvider.`reportBadPropertyDefinition(BeanDescription bean, BeanPropertyDefinition prop, String message, Object... args)` Helper method called to indicate problem in POJO (serialization) definitions or settings regarding specific property (of a type), unrelated to actual JSON content to map.
`<T> T` | DeserializationContext.`reportBadPropertyDefinition(BeanDescription bean, BeanPropertyDefinition prop, String message, Object... args)` Helper method called to indicate problem in POJO (serialization) definitions or settings regarding specific property (of a type), unrelated to actual JSON content to map.

### Uses of BeanPropertyDefinition in com.fasterxml.jackson.databind.deser

Methods in com.fasterxml.jackson.databind.deser that return types with arguments of type BeanPropertyDefinition
Modifier and Type | Method and Description
--- | ---
`protected List<BeanPropertyDefinition>` | BeanDeserializerFactory.`filterBeanProps(DeserializationContext ctxt, BeanDescription beanDesc, BeanDeserializerBuilder builder, List<BeanPropertyDefinition> propDefsIn, Set<String> ignored)` Helper method called to filter out explicit ignored properties, as well as properties that have "ignorable types".

`List<BeanPropertyDefinition>`

BeanDeserializerModifier.`updateProperties(DeserializationConfig config, BeanDescription beanDesc, List<BeanPropertyDefinition> propDefs)`
Method called by `BeanDeserializerFactory` when it has collected initial list of `BeanPropertyDefinition`s, and done basic by-name and by-type filtering, but before constructing builder or actual property handlers; or arranging order.

Methods in com.fasterxml.jackson.databind.deser with parameters of type BeanPropertyDefinition
Modifier and Type | Method and Description
--- | ---
`protected boolean` | BasicDeserializerFactory.`_checkIfCreatorPropertyBased(AnnotationIntrospector intr, AnnotatedWithParams creator, BeanPropertyDefinition propDef)`
`protected SettableBeanProperty` | BeanDeserializerFactory.`constructSettableProperty(DeserializationContext ctxt, BeanDescription beanDesc, BeanPropertyDefinition propDef, JavaType propType0)` Method that will construct a regular bean property setter using the given setter method.
`protected SettableBeanProperty` | BeanDeserializerFactory.`constructSetterlessProperty(DeserializationContext ctxt, BeanDescription beanDesc, BeanPropertyDefinition propDef)` Method that will construct a regular bean property setter using the given setter method.

Method parameters in com.fasterxml.jackson.databind.deser with type arguments of type BeanPropertyDefinition
Modifier and Type | Method and Description
--- | ---
`protected List<BeanPropertyDefinition>` | BeanDeserializerFactory.`filterBeanProps(DeserializationContext ctxt, BeanDescription beanDesc, BeanDeserializerBuilder builder, List<BeanPropertyDefinition> propDefsIn, Set<String> ignored)` Helper method called to filter out explicit ignored properties, as well as properties that have "ignorable types".

`List<BeanPropertyDefinition>`

BeanDeserializerModifier.`updateProperties(DeserializationConfig config, BeanDescription beanDesc, List<BeanPropertyDefinition> propDefs)`
Method called by `BeanDeserializerFactory` when it has collected initial list of `BeanPropertyDefinition`s, and done basic by-name and by-type filtering, but before constructing builder or actual property handlers; or arranging order.

Constructors in com.fasterxml.jackson.databind.deser with parameters of type BeanPropertyDefinition
Constructor and Description
`SettableBeanProperty(BeanPropertyDefinition propDef, JavaType type, TypeDeserializer typeDeser, Annotations contextAnnotations)`

### Uses of BeanPropertyDefinition in com.fasterxml.jackson.databind.deser.impl

Constructors in com.fasterxml.jackson.databind.deser.impl with parameters of type BeanPropertyDefinition
Constructor and Description
`FieldProperty(BeanPropertyDefinition propDef, JavaType type, TypeDeserializer typeDeser, Annotations contextAnnotations, AnnotatedField field)`
`MethodProperty(BeanPropertyDefinition propDef, JavaType type, TypeDeserializer typeDeser, Annotations contextAnnotations, AnnotatedMethod method)`
`SetterlessProperty(BeanPropertyDefinition propDef, JavaType type, TypeDeserializer typeDeser, Annotations contextAnnotations, AnnotatedMethod method)`

### Uses of BeanPropertyDefinition in com.fasterxml.jackson.databind.introspect

Subclasses of BeanPropertyDefinition in com.fasterxml.jackson.databind.introspect
Modifier and Type | Class and Description
--- | ---
`class` | `POJOPropertyBuilder` Helper class used for aggregating information about a single potential POJO property.

Fields in com.fasterxml.jackson.databind.introspect with type parameters of type BeanPropertyDefinition
Modifier and Type | Field and Description
--- | ---
`protected List<BeanPropertyDefinition>` | BasicBeanDescription.`_properties` Properties collected for the POJO; initialized as needed.

Methods in com.fasterxml.jackson.databind.introspect that return BeanPropertyDefinition
Modifier and Type | Method and Description
--- | ---
`BeanPropertyDefinition` | BasicBeanDescription.`findProperty(PropertyName name)`
`abstract BeanPropertyDefinition` | BeanPropertyDefinition.`withName(PropertyName newName)` Method that can be used to create a definition with same settings as this one, but with different (external) name; that is, one for which `getName()` would return `newName`.
`abstract BeanPropertyDefinition` | BeanPropertyDefinition.`withSimpleName(String newSimpleName)` Alternate "mutant factory" that will only change simple name, but leave other optional parts (like namespace) as is.

Methods in com.fasterxml.jackson.databind.introspect that return types with arguments of type BeanPropertyDefinition
Modifier and Type | Method and Description
--- | ---
`protected List<BeanPropertyDefinition>` | BasicBeanDescription.`_properties()`
`List<BeanPropertyDefinition>` | BasicBeanDescription.`findProperties()`
`List<BeanPropertyDefinition>` | POJOPropertiesCollector.`getProperties()`

Methods in com.fasterxml.jackson.databind.introspect with parameters of type BeanPropertyDefinition
Modifier and Type | Method and Description
--- | ---
`boolean` | BasicBeanDescription.`addProperty(BeanPropertyDefinition def)`

Constructor parameters in com.fasterxml.jackson.databind.introspect with type arguments of type BeanPropertyDefinition
Constructor and Description
`BasicBeanDescription(MapperConfig<?> config, JavaType type, AnnotatedClass classDef, List<BeanPropertyDefinition> props)` Alternate constructor used in cases where property information is not needed, only class info.

### Uses of BeanPropertyDefinition in com.fasterxml.jackson.databind.ser

Methods in com.fasterxml.jackson.databind.ser with parameters of type BeanPropertyDefinition
Modifier and Type | Method and Description
--- | ---
`protected BeanPropertyWriter` | BeanSerializerFactory.`_constructWriter(SerializerProvider prov, BeanPropertyDefinition propDef, PropertyBuilder pb, boolean staticTyping, AnnotatedMember accessor)` Secondary helper method for constructing `BeanPropertyWriter` for given member (field or method).
`protected BeanPropertyWriter` | PropertyBuilder.`buildWriter(SerializerProvider prov, BeanPropertyDefinition propDef, JavaType declaredType, JsonSerializer<?> ser, TypeSerializer typeSer, TypeSerializer contentTypeSer, AnnotatedMember am, boolean defaultUseStaticTyping)`
`abstract VirtualBeanPropertyWriter` | VirtualBeanPropertyWriter.`withConfig(MapperConfig<?> config, AnnotatedClass declaringClass, BeanPropertyDefinition propDef, JavaType type)` Contextualization method called on a newly constructed virtual bean property.

Method parameters in com.fasterxml.jackson.databind.ser with type arguments of type BeanPropertyDefinition
Modifier and Type | Method and Description
--- | ---
`protected void` | BeanSerializerFactory.`removeIgnorableTypes(SerializationConfig config, BeanDescription beanDesc, List<BeanPropertyDefinition> properties)` Method that will apply by-type limitations (as per [JACKSON-429]); by default this is based on `JsonIgnoreType` annotation but can be supplied by module-provided introspectors too.
`protected void` | BeanSerializerFactory.`removeSetterlessGetters(SerializationConfig config, BeanDescription beanDesc, List<BeanPropertyDefinition> properties)` Helper method that will remove all properties that do not have a mutator.

Constructors in com.fasterxml.jackson.databind.ser with parameters of type BeanPropertyDefinition
Constructor and Description
`BeanPropertyWriter(BeanPropertyDefinition propDef, AnnotatedMember member, Annotations contextAnnotations, JavaType declaredType, JsonSerializer<?> ser, TypeSerializer typeSer, JavaType serType, boolean suppressNulls, Object suppressableValue)`
`PropertyWriter(BeanPropertyDefinition propDef)`
`VirtualBeanPropertyWriter(BeanPropertyDefinition propDef, Annotations contextAnnotations, JavaType declaredType)` Constructor used by most sub-types.
`VirtualBeanPropertyWriter(BeanPropertyDefinition propDef, Annotations contextAnnotations, JavaType declaredType, JsonSerializer<?> ser, TypeSerializer typeSer, JavaType serType, JsonInclude.Value inclusion)` Pass-through constructor that may be used by sub-classes that want full control over implementation.

### Uses of BeanPropertyDefinition in com.fasterxml.jackson.databind.ser.impl

Methods in com.fasterxml.jackson.databind.ser.impl with parameters of type BeanPropertyDefinition
Modifier and Type | Method and Description
--- | ---
`static AttributePropertyWriter` | AttributePropertyWriter.`construct(String attrName, BeanPropertyDefinition propDef, Annotations contextAnnotations, JavaType declaredType)`
`VirtualBeanPropertyWriter` | AttributePropertyWriter.`withConfig(MapperConfig<?> config, AnnotatedClass declaringClass, BeanPropertyDefinition propDef, JavaType type)` Since this method should typically not be called on this sub-type, default implementation simply throws an `IllegalStateException`.

Constructors in com.fasterxml.jackson.databind.ser.impl with parameters of type BeanPropertyDefinition
Constructor and Description
`AttributePropertyWriter(String attrName, BeanPropertyDefinition propDef, Annotations contextAnnotations, JavaType declaredType)`
`AttributePropertyWriter(String attrName, BeanPropertyDefinition propDef, Annotations contextAnnotations, JavaType declaredType, JsonInclude.Value inclusion)`

### Uses of BeanPropertyDefinition in com.fasterxml.jackson.databind.util

Subclasses of BeanPropertyDefinition in com.fasterxml.jackson.databind.util
Modifier and Type | Class and Description
--- | ---
`class` | `SimpleBeanPropertyDefinition` Simple immutable `BeanPropertyDefinition` implementation that can be wrapped around a `AnnotatedMember` that is a simple accessor (getter) or mutator (setter, constructor parameter) (or both, for fields).

Methods in com.fasterxml.jackson.databind.util that return BeanPropertyDefinition
Modifier and Type | Method and Description
--- | ---
`BeanPropertyDefinition` | SimpleBeanPropertyDefinition.`withInclusion(JsonInclude.Value inclusion)`
`BeanPropertyDefinition` | SimpleBeanPropertyDefinition.`withMetadata(PropertyMetadata metadata)`
`BeanPropertyDefinition` | SimpleBeanPropertyDefinition.`withName(PropertyName newName)`
`BeanPropertyDefinition` | SimpleBeanPropertyDefinition.`withName(String newName)` Deprecated.
`BeanPropertyDefinition` | SimpleBeanPropertyDefinition.`withSimpleName(String newName)`