JsonFormat.Feature
Date: 2016-12-03

com.fasterxml.jackson.annotation

## Enum JsonFormat.Feature

- java.lang.Object
- - java.lang.Enum<JsonFormat.Feature>
  - - com.fasterxml.jackson.annotation.JsonFormat.Feature

- All Implemented Interfaces:
    java.io.Serializable, java.lang.Comparable<JsonFormat.Feature>
  Enclosing class:
    JsonFormat

      public static enum JsonFormat.Feature
      extends java.lang.Enum<JsonFormat.Feature>

  Set of features that can be enabled/disabled for property annotated. These often relate to specific `SerializationFeature` or `DeserializationFeature`, as noted by entries.

  Note that whether specific setting has an effect depends on whether `JsonSerializer` / `JsonDeserializer` being used takes the format setting into account. If not, please file an issue for adding support via issue tracker for package that has handlers (if you know which one; if not, just use `jackson-databind`).

  Since:
    2.6

- - ### Enum Constant Summary

    Enum Constants
    Enum Constant and Description
    `ACCEPT_CASE_INSENSITIVE_PROPERTIES` Override for `MapperFeature.ACCEPT_CASE_INSENSITIVE_PROPERTIES`.
    `ACCEPT_SINGLE_VALUE_AS_ARRAY` Override for `DeserializationFeature.ACCEPT_SINGLE_VALUE_AS_ARRAY` which will allow deserialization of JSON non-array values into single-element Java arrays and `Collection`s.
    `ADJUST_DATES_TO_CONTEXT_TIME_ZONE` Override for `DeserializationFeature.ADJUST_DATES_TO_CONTEXT_TIMEZONE` that specifies whether context provided timezone `DeserializationContext.getTimeZone()` should be used to adjust Date/Time values on deserialization, even if value itself contains timezone information
    `WRITE_DATE_TIMESTAMPS_AS_NANOSECONDS` Override for `SerializationFeature.WRITE_DATE_TIMESTAMPS_AS_NANOSECONDS`, similar constraints apply.
    `WRITE_DATES_WITH_ZONE_ID` Override for `SerializationFeature.WRITE_DATES_WITH_ZONE_ID`, similar constraints apply.
    `WRITE_SINGLE_ELEM_ARRAYS_UNWRAPPED` Override for `SerializationFeature.WRITE_SINGLE_ELEM_ARRAYS_UNWRAPPED` which will force serialization of single-element arrays and `Collection`s as that single element and excluding array wrapper.
    `WRITE_SORTED_MAP_ENTRIES` Override for `SerializationFeature.ORDER_MAP_ENTRIES_BY_KEYS`, enabling of which will force sorting of `Map` keys before serialization.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `static JsonFormat.Feature` | `valueOf(java.lang.String name)` Returns the enum constant of this type with the specified name.
    `static JsonFormat.Feature[]` | `values()` Returns an array containing the constants of this enum type, in the order they are declared.

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

      `clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

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

      `getClass, notify, notifyAll, wait, wait, wait`

- - ### Enum Constant Detail

    - #### ACCEPT_SINGLE_VALUE_AS_ARRAY

          public static final JsonFormat.Feature ACCEPT_SINGLE_VALUE_AS_ARRAY

      Override for `DeserializationFeature.ACCEPT_SINGLE_VALUE_AS_ARRAY` which will allow deserialization of JSON non-array values into single-element Java arrays and `Collection`s.

    - #### ACCEPT_CASE_INSENSITIVE_PROPERTIES

          public static final JsonFormat.Feature ACCEPT_CASE_INSENSITIVE_PROPERTIES

      Override for `MapperFeature.ACCEPT_CASE_INSENSITIVE_PROPERTIES`. Only affects deserialization, has no effect on serialization.
      Since:
        2.8

    - #### WRITE_DATE_TIMESTAMPS_AS_NANOSECONDS

          public static final JsonFormat.Feature WRITE_DATE_TIMESTAMPS_AS_NANOSECONDS

      Override for `SerializationFeature.WRITE_DATE_TIMESTAMPS_AS_NANOSECONDS`, similar constraints apply.

    - #### WRITE_DATES_WITH_ZONE_ID

          public static final JsonFormat.Feature WRITE_DATES_WITH_ZONE_ID

      Override for `SerializationFeature.WRITE_DATES_WITH_ZONE_ID`, similar constraints apply.

    - #### WRITE_SINGLE_ELEM_ARRAYS_UNWRAPPED

          public static final JsonFormat.Feature WRITE_SINGLE_ELEM_ARRAYS_UNWRAPPED

      Override for `SerializationFeature.WRITE_SINGLE_ELEM_ARRAYS_UNWRAPPED` which will force serialization of single-element arrays and `Collection`s as that single element and excluding array wrapper.

    - #### WRITE_SORTED_MAP_ENTRIES

          public static final JsonFormat.Feature WRITE_SORTED_MAP_ENTRIES

      Override for `SerializationFeature.ORDER_MAP_ENTRIES_BY_KEYS`, enabling of which will force sorting of `Map` keys before serialization.

    - #### ADJUST_DATES_TO_CONTEXT_TIME_ZONE

          public static final JsonFormat.Feature ADJUST_DATES_TO_CONTEXT_TIME_ZONE

      Override for `DeserializationFeature.ADJUST_DATES_TO_CONTEXT_TIMEZONE` that specifies whether context provided timezone `DeserializationContext.getTimeZone()` should be used to adjust Date/Time values on deserialization, even if value itself contains timezone information
      Since:
        2.8

  - ### Method Detail

    - #### values

          public static JsonFormat.Feature[] values()

      Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:

          for (JsonFormat.Feature c : JsonFormat.Feature.values())
              System.out.println(c);

      Returns:
        an array containing the constants of this enum type, in the order they are declared

    - #### valueOf

          public static JsonFormat.Feature valueOf(java.lang.String name)

      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
        `name` - the name of the enum constant to be returned.
      Returns:
        the enum constant with the specified name
      Throws:
        `java.lang.IllegalArgumentException` - if this enum type has no constant with the specified name
        `java.lang.NullPointerException` - if the argument is null