Class YassonConfig

java.lang.Object
javax.json.bind.JsonbConfig
org.eclipse.yasson.YassonConfig

public class YassonConfig extends javax.json.bind.JsonbConfig
Custom properties for configuring Yasson outside of the specification JsonbConfig scope.
  • Field Details

  • Constructor Details

    • YassonConfig

      public YassonConfig()
  • Method Details

    • withFailOnUnknownProperties

      public YassonConfig withFailOnUnknownProperties(boolean failOnUnknownProperties)
      Property used to specify behaviour on deserialization when JSON document contains properties which doesn't exist in the target class. Default value is 'false'.
      Parameters:
      failOnUnknownProperties - Whether or not to fail if unknown properties are encountered
      Returns:
      This YassonConfig instance
    • withUserTypeMapping

      public YassonConfig withUserTypeMapping(Map<Class<?>,Class<?>> mapping)
      User type mapping for map interface to implementation classes.
      Parameters:
      mapping - A map of interface to implementation class mappings
      Returns:
      This YassonConfig instance
    • withZeroTimeParseDefaulting

      public YassonConfig withZeroTimeParseDefaulting(boolean defaultZeroHour)

      Makes parsing dates defaulting to zero hour, minute and second. This will made available to parse patterns like yyyy.MM.dd to Date, Calendar, Instant LocalDate or even ZonedDateTime.

      If time zone is not set in the pattern then UTC time zone is used. So for example json value 2018.01.01 becomes 2018.01.01 00:00:00 UTC when parsed to instant Instant or ZonedDateTime.

      Parameters:
      defaultZeroHour - Whether or not to default parsing dates to the zero hour
      Returns:
      This YassonConfig instance
    • withNullRootSerializer

      public YassonConfig withNullRootSerializer(javax.json.bind.serializer.JsonbSerializer<?> nullSerializer)
      Serializer to use when object provided to Jsonb.toJson(Object) is null or an empty Optional. Must be instance of JsonbSerializer<Object>. Its obj value will be respective parameter.
      Parameters:
      nullSerializer - JsonbSerializer instance to use for serializing null root values
      Returns:
      This YassonConfig instance
    • withEagerParsing

      public YassonConfig withEagerParsing(Class<?>... classes)
      Parameters:
      classes - A list of classes to eagerly parse upon creation of the Jsonb instance used with this configuration.
      Returns:
      This YassonConfig instance