com.fasterxml.jackson.databind

Class PropertyMetadata

  • All Implemented Interfaces:
    Serializable


    public class PropertyMetadata
    extends Object
    implements Serializable
    Simple container class used for storing "additional" metadata about properties. Carved out to reduce number of distinct properties that actual property implementations and place holders need to store; since instances are immutable, they can be freely shared.
    Since:
    2.3
    See Also:
    Serialized Form
    • Field Detail

      • STD_REQUIRED_OR_OPTIONAL

        public static final PropertyMetadata STD_REQUIRED_OR_OPTIONAL
      • _required

        protected final Boolean _required
        Three states: required, not required and unknown; unknown represented as null.
      • _description

        protected final String _description
        Optional human-readable description associated with the property.
      • _index

        protected final Integer _index
        Optional index of the property within containing Object.
        Since:
        2.4
      • _defaultValue

        protected final String _defaultValue
        Optional default value, as String, for property; not used for any functionality by core databind, offered as metadata for extensions.
      • _mergeInfo

        protected final transient PropertyMetadata.MergeInfo _mergeInfo
        Settings regarding merging, if property is determined to possibly be mergeable (possibly since global settings may be omitted for non-mergeable types).

        NOTE: transient since it is assumed that this information is only relevant during initial setup and not needed after full initialization. May be changed if this proves necessary.

        Since:
        2.9
      • _valueNulls

        protected com.fasterxml.jackson.annotation.Nulls _valueNulls
        Settings regarding handling of incoming `null`s, both for value itself and, for structured types, content values (array/Collection elements, Map values).
        Since:
        2.9
      • _contentNulls

        protected com.fasterxml.jackson.annotation.Nulls _contentNulls
        Settings regarding handling of incoming `null`s, both for value itself and, for structured types, content values (array/Collection elements, Map values).
        Since:
        2.9
    • Constructor Detail

    • Method Detail

      • readResolve

        protected Object readResolve()
        Minor optimization: let's canonicalize back to placeholders in cases where there is no real data to consider
      • withNulls

        public PropertyMetadata withNulls(com.fasterxml.jackson.annotation.Nulls valueNulls,
                                          com.fasterxml.jackson.annotation.Nulls contentNulls)
        Since:
        2.9
      • getDescription

        public String getDescription()
      • getDefaultValue

        public String getDefaultValue()
        Since:
        2.5
      • hasDefaultValue

        public boolean hasDefaultValue()
        Accessor for determining whether property has declared "default value", which may be used by extension modules.
        Since:
        2.6
      • isRequired

        public boolean isRequired()
      • getRequired

        public Boolean getRequired()
      • getIndex

        public Integer getIndex()
        Since:
        2.4
      • hasIndex

        public boolean hasIndex()
        Since:
        2.4
      • getValueNulls

        public com.fasterxml.jackson.annotation.Nulls getValueNulls()
        Since:
        2.9
      • getContentNulls

        public com.fasterxml.jackson.annotation.Nulls getContentNulls()
        Since:
        2.9

Copyright © 2008–2024 FasterXML. All rights reserved.