Class YassonConfig


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

      • YassonConfig

        public YassonConfig()
    • Method Detail

      • 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