JsonIncludeProperties.Value (Jackson-annotations 2.12.0 API)
Date: 2020-11-28

com.fasterxml.jackson.annotation

## Class JsonIncludeProperties.Value

- java.lang.Object
- - com.fasterxml.jackson.annotation.JsonIncludeProperties.Value

- All Implemented Interfaces:
    JacksonAnnotationValue<JsonIncludeProperties>, Serializable
  Enclosing class:
    JsonIncludeProperties

      public static class JsonIncludeProperties.Value
      extends Object
      implements JacksonAnnotationValue<JsonIncludeProperties>, Serializable

  Helper class used to contain information from a single `JsonIncludeProperties` annotation, as well as to provide possible overrides from non-annotation sources.
  Since:
    2.12
  See Also:
    Serialized Form

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected Set<String>` | `_included` Name of the properties to include.
    `protected static JsonIncludeProperties.Value` | `ALL` Default instance has no explicitly included fields

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `Value(Set<String> included)`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `static JsonIncludeProperties.Value` | `all()`
    `boolean` | `equals(Object o)`
    `static JsonIncludeProperties.Value` | `from(JsonIncludeProperties src)`
    `Set<String>` | `getIncluded()`
    `int` | `hashCode()`
    `String` | `toString()`
    `Class<JsonIncludeProperties>` | `valueFor()` Introspection method that may be used to find actual annotation that may be used as the source for value instance.
    `JsonIncludeProperties.Value` | `withOverrides(JsonIncludeProperties.Value overrides)` Mutant factory method to override the current value with an another, merging the included fields so that only entries that exist in both original and override set are included, taking into account that "undefined" `JsonIncludeProperties.Value`s do not count ("undefined" meaning that `getIncluded()` returns `null`).

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

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### ALL

          protected static final JsonIncludeProperties.Value ALL

      Default instance has no explicitly included fields

    - #### _included

          protected final Set<String> _included

      Name of the properties to include. Null means that all properties are included, empty means none.

  - ### Constructor Detail

    - #### Value

          protected Value(Set<String> included)

  - ### Method Detail

    - #### from

          public static JsonIncludeProperties.Value from(JsonIncludeProperties src)

    - #### all

          public static JsonIncludeProperties.Value all()

    - #### valueFor

          public Class<JsonIncludeProperties> valueFor()

      Description copied from interface: `JacksonAnnotationValue`
      Introspection method that may be used to find actual annotation that may be used as the source for value instance.
      Specified by:
        `valueFor` in interface `JacksonAnnotationValue<JsonIncludeProperties>`
      Returns:
        Annotation class for which instances of this value class are created

    - #### getIncluded

          public Set<String> getIncluded()

      Returns:
        Names included, if any, possibly empty; `null` for "not defined"

    - #### withOverrides

          public JsonIncludeProperties.Value withOverrides(JsonIncludeProperties.Value overrides)

      Mutant factory method to override the current value with an another, merging the included fields so that only entries that exist in both original and override set are included, taking into account that "undefined" `JsonIncludeProperties.Value`s do not count ("undefined" meaning that `getIncluded()` returns `null`). So: overriding with "undefined" returns original `Value` as-is; overriding an "undefined" `Value` returns override `Value` as-is.

    - #### toString

          public String toString()

      Overrides:
        `toString` in class `Object`

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `Object`

    - #### equals

          public boolean equals(Object o)

      Overrides:
        `equals` in class `Object`

Copyright © 2008–2020 FasterXML. All rights reserved.