Class Jdk8Module

  • All Implemented Interfaces:
    com.fasterxml.jackson.core.Versioned

    public class Jdk8Module
    extends com.fasterxml.jackson.databind.Module
    • Nested Class Summary

      • Nested classes/interfaces inherited from class com.fasterxml.jackson.databind.Module

        com.fasterxml.jackson.databind.Module.SetupContext
    • Constructor Summary

      Constructors 
      Constructor Description
      Jdk8Module()  
    • Method Summary

      All Methods Instance Methods Concrete Methods Deprecated Methods 
      Modifier and Type Method Description
      Jdk8Module configureAbsentsAsNulls​(boolean state)
      Deprecated.
      Since 2.13, no replacement, will be removed from Jackson 3.0 (when optional types will be part of core databind)
      Jdk8Module configureReadAbsentAsNull​(boolean state)
      Method for configuring handling of "absent" Optional values; absent meaning case where no value is found to pass via Creator method (constructor, factory method).
      boolean equals​(java.lang.Object o)  
      java.lang.String getModuleName()  
      int hashCode()  
      void setupModule​(com.fasterxml.jackson.databind.Module.SetupContext context)  
      com.fasterxml.jackson.core.Version version()  
      • Methods inherited from class com.fasterxml.jackson.databind.Module

        getDependencies, getTypeId
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • DEFAULT_READ_ABSENT_AS_NULL

        public static final boolean DEFAULT_READ_ABSENT_AS_NULL
        See Also:
        Constant Field Values
      • _cfgWriteAbsentAsNull

        protected boolean _cfgWriteAbsentAsNull
        Configuration setting that determines whether `Optional.empty()` is considered "same as null" for serialization purposes; that is, to be filtered same as nulls are. If enabled, absent values are treated like nulls; if disabled, they are not. In either case, absent values are always considered "empty".

        Default value is `false` for backwards compatibility (2.5 and prior only had this behavior).

        Note that this setting MUST be changed BEFORE registering the module: changes after registration will have no effect.

        Note that in most cases it makes more sense to just use `NON_ABSENT` inclusion criteria for filtering out absent optionals; this setting is mostly useful for legacy use cases that predate version 2.6.

    • Constructor Detail

      • Jdk8Module

        public Jdk8Module()
    • Method Detail

      • setupModule

        public void setupModule​(com.fasterxml.jackson.databind.Module.SetupContext context)
        Specified by:
        setupModule in class com.fasterxml.jackson.databind.Module
      • version

        public com.fasterxml.jackson.core.Version version()
        Specified by:
        version in interface com.fasterxml.jackson.core.Versioned
        Specified by:
        version in class com.fasterxml.jackson.databind.Module
      • configureAbsentsAsNulls

        @Deprecated
        public Jdk8Module configureAbsentsAsNulls​(boolean state)
        Deprecated.
        Since 2.13, no replacement, will be removed from Jackson 3.0 (when optional types will be part of core databind)
        Configuration method that may be used to change configuration setting _cfgHandleAbsentAsNull: enabling means that `Optional.empty()` values are handled like Java nulls (wrt filtering on serialization); disabling that they are only treated as "empty" values, but not like native Java nulls. Recommended setting for this value is `false`. For compatibility with older versions of other "optional" values (like Guava optionals), it can be set to 'true'. The default is `false` for backwards compatibility.

        Note that in most cases it makes more sense to just use `NON_ABSENT` inclusion criteria for filtering out absent optionals; this setting is mostly useful for legacy use cases that predate version 2.6.

        Returns:
        This module instance, useful for chaining calls
        Since:
        2.6
      • configureReadAbsentAsNull

        public Jdk8Module configureReadAbsentAsNull​(boolean state)
        Method for configuring handling of "absent" Optional values; absent meaning case where no value is found to pass via Creator method (constructor, factory method). If enabled (set to true) it will be deserialized as null; if disabled it will be read as "empty" Optional (same as if encountering actual JSON null value).

        Default is false for backwards compatibility (retains behavior pre-2.14); for Jackson 3.0 default will likely be changed.

        Since:
        2.14
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • equals

        public boolean equals​(java.lang.Object o)
        Overrides:
        equals in class java.lang.Object
      • getModuleName

        public java.lang.String getModuleName()
        Specified by:
        getModuleName in class com.fasterxml.jackson.databind.Module