BeanPropertyDefinition (Jackson JSON Processor)
Date: 2013-07-14

org.codehaus.jackson.map

## Class BeanPropertyDefinition

- java.lang.Object
- - org.codehaus.jackson.map.BeanPropertyDefinition

- All Implemented Interfaces:
    Named
  Direct Known Subclasses:
    POJOPropertyBuilder

      public abstract class BeanPropertyDefinition
      extends Object
      implements Named

  Simple value classes that contain definitions of properties, used during introspection of properties to use for serialization and deserialization purposes. These instances are created before actual `BeanProperty` instances are created, i.e. they are used earlier in the process flow.
  Since:
    1.9

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `BeanPropertyDefinition()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `couldDeserialize()`
    `boolean` | `couldSerialize()`
    `abstract AnnotatedMember` | `getAccessor()` Method used to find accessor (getter, field to access) to use for accessing value of the property.
    `abstract AnnotatedParameter` | `getConstructorParameter()`
    `abstract AnnotatedField` | `getField()`
    `abstract AnnotatedMethod` | `getGetter()`
    `abstract String` | `getInternalName()` Accessor that can be used to determine implicit name from underlying element(s) before possible renaming.
    `abstract AnnotatedMember` | `getMutator()` Method used to find mutator (constructor parameter, setter, field) to use for changing value of the property.
    `abstract String` | `getName()` Accessor for name used for external representation (in JSON).
    `abstract AnnotatedMethod` | `getSetter()`
    `abstract boolean` | `hasConstructorParameter()`
    `abstract boolean` | `hasField()`
    `abstract boolean` | `hasGetter()`
    `abstract boolean` | `hasSetter()`
    `abstract boolean` | `isExplicitlyIncluded()` Accessor that can be called to check whether property was included due to an explicit marker (usually annotation), or just by naming convention.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### BeanPropertyDefinition

          public BeanPropertyDefinition()

  - ### Method Detail

    - #### getName

          public abstract String getName()

      Accessor for name used for external representation (in JSON).
      Specified by:
        `getName` in interface `Named`

    - #### getInternalName

          public abstract String getInternalName()

      Accessor that can be used to determine implicit name from underlying element(s) before possible renaming. This is the "internal" name derived from accessor ("x" from "getX"), and is not based on annotations or naming strategy.

    - #### isExplicitlyIncluded

          public abstract boolean isExplicitlyIncluded()

      Accessor that can be called to check whether property was included due to an explicit marker (usually annotation), or just by naming convention.
      Returns:
        True if property was explicitly included (usually by having one of components being annotated); false if inclusion was purely due to naming or visibility definitions (that is, implicit)
      Since:
        1.9.6

    - #### hasGetter

          public abstract boolean hasGetter()

    - #### hasSetter

          public abstract boolean hasSetter()

    - #### hasField

          public abstract boolean hasField()

    - #### hasConstructorParameter

          public abstract boolean hasConstructorParameter()

    - #### couldDeserialize

          public boolean couldDeserialize()

    - #### couldSerialize

          public boolean couldSerialize()

    - #### getGetter

          public abstract AnnotatedMethod getGetter()

    - #### getSetter

          public abstract AnnotatedMethod getSetter()

    - #### getField

          public abstract AnnotatedField getField()

    - #### getConstructorParameter

          public abstract AnnotatedParameter getConstructorParameter()

    - #### getAccessor

          public abstract AnnotatedMember getAccessor()

      Method used to find accessor (getter, field to access) to use for accessing value of the property. Null if no such member exists.

    - #### getMutator

          public abstract AnnotatedMember getMutator()

      Method used to find mutator (constructor parameter, setter, field) to use for changing value of the property. Null if no such member exists.