ConcreteBeanPropertyBase
Date: 2016-12-04

com.fasterxml.jackson.databind.introspect

## Class ConcreteBeanPropertyBase

- java.lang.Object
- - com.fasterxml.jackson.databind.introspect.ConcreteBeanPropertyBase

- All Implemented Interfaces:
    BeanProperty, Named, java.io.Serializable
  Direct Known Subclasses:
    PropertyWriter, SettableBeanProperty

      public abstract class ConcreteBeanPropertyBase
      extends java.lang.Object
      implements BeanProperty, java.io.Serializable

  Intermediate `BeanProperty` class shared by concrete readable- and writable property implementations for sharing common functionality.
  Since:
    2.7
  See Also:
    Serialized Form

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface com.fasterxml.jackson.databind.BeanProperty

      `BeanProperty.Std`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected PropertyMetadata` | `_metadata` Additional information about property
    `protected com.fasterxml.jackson.annotation.JsonFormat.Value` | `_propertyFormat` Lazily accessed value for per-property format override definition.

    - ### Fields inherited from interface com.fasterxml.jackson.databind.BeanProperty

      `EMPTY_FORMAT, EMPTY_INCLUDE`

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `ConcreteBeanPropertyBase(ConcreteBeanPropertyBase src)`
    `protected` | `ConcreteBeanPropertyBase(PropertyMetadata md)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `com.fasterxml.jackson.annotation.JsonFormat.Value` | `findFormatOverrides(AnnotationIntrospector intr)` Deprecated.
    `com.fasterxml.jackson.annotation.JsonFormat.Value` | `findPropertyFormat(MapperConfig<?> config, java.lang.Class<?> baseType)` Helper method used to look up format settings applicable to this property, considering both possible per-type configuration settings
    `com.fasterxml.jackson.annotation.JsonInclude.Value` | `findPropertyInclusion(MapperConfig<?> config, java.lang.Class<?> baseType)` Convenience method that is roughly equivalent to
    `PropertyMetadata` | `getMetadata()` Accessor for additional optional information about property.
    `boolean` | `isRequired()` Whether value for property is marked as required using annotations or associated schema.
    `boolean` | `isVirtual()` Accessor for checking whether there is an actual physical property behind this property abstraction or not.

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

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

    - ### Methods inherited from interface com.fasterxml.jackson.databind.BeanProperty

      `depositSchemaProperty, getAnnotation, getContextAnnotation, getFullName, getMember, getName, getType, getWrapperName`

- - ### Field Detail

    - #### _metadata

          protected final PropertyMetadata _metadata

      Additional information about property
      Since:
        2.3

    - #### _propertyFormat

          protected transient com.fasterxml.jackson.annotation.JsonFormat.Value _propertyFormat

      Lazily accessed value for per-property format override definition.
      Since:
        2.8

  - ### Constructor Detail

    - #### ConcreteBeanPropertyBase

          protected ConcreteBeanPropertyBase(PropertyMetadata md)

    - #### ConcreteBeanPropertyBase

          protected ConcreteBeanPropertyBase(ConcreteBeanPropertyBase src)

  - ### Method Detail

    - #### isRequired

          public boolean isRequired()

      Description copied from interface: `BeanProperty`
      Whether value for property is marked as required using annotations or associated schema. Equivalent to: `getMetadata().isRequired()`
      Specified by:
        `isRequired` in interface `BeanProperty`

    - #### getMetadata

          public PropertyMetadata getMetadata()

      Description copied from interface: `BeanProperty`
      Accessor for additional optional information about property.
      Specified by:
        `getMetadata` in interface `BeanProperty`
      Returns:
        Metadata about property; never null.

    - #### isVirtual

          public boolean isVirtual()

      Description copied from interface: `BeanProperty`
      Accessor for checking whether there is an actual physical property behind this property abstraction or not.
      Specified by:
        `isVirtual` in interface `BeanProperty`

    - #### findFormatOverrides

          @Deprecated
          public final com.fasterxml.jackson.annotation.JsonFormat.Value findFormatOverrides(AnnotationIntrospector intr)

      Deprecated.
      Description copied from interface: `BeanProperty`
      Convenience method that is roughly equivalent to

             return intr.findFormat(getMember());

      and specifically does NOT try to find per-type format defaults to merge; use `BeanProperty.findPropertyFormat(com.fasterxml.jackson.databind.cfg.MapperConfig<?>, java.lang.Class<?>)` if such defaults would be useful.
      Specified by:
        `findFormatOverrides` in interface `BeanProperty`

    - #### findPropertyFormat

          public com.fasterxml.jackson.annotation.JsonFormat.Value findPropertyFormat(MapperConfig<?> config,
                                                                             java.lang.Class<?> baseType)

      Description copied from interface: `BeanProperty`
      Helper method used to look up format settings applicable to this property, considering both possible per-type configuration settings
      Specified by:
        `findPropertyFormat` in interface `BeanProperty`

    - #### findPropertyInclusion

          public com.fasterxml.jackson.annotation.JsonInclude.Value findPropertyInclusion(MapperConfig<?> config,
                                                                                 java.lang.Class<?> baseType)

      Description copied from interface: `BeanProperty`
      Convenience method that is roughly equivalent to

             return config.getAnnotationIntrospector().findPropertyInclusion(getMember());

      but also considers global default settings for inclusion
      Specified by:
        `findPropertyInclusion` in interface `BeanProperty`