Class AbstractDateTypeSerializer<T extends java.util.Date>

  • Type Parameters:
    T - date type
    All Implemented Interfaces:
    javax.json.bind.serializer.JsonbSerializer<T>
    Direct Known Subclasses:
    DateTypeSerializer, SqlDateTypeSerializer

    public abstract class AbstractDateTypeSerializer<T extends java.util.Date>
    extends AbstractDateTimeSerializer<T>
    Common serializer for Date and Date types.
    • Constructor Detail

      • AbstractDateTypeSerializer

        public AbstractDateTypeSerializer​(Customization customization)
        Creates a new instance.
        Parameters:
        customization - Model customization.
    • Method Detail

      • toInstant

        protected java.time.Instant toInstant​(java.util.Date value)
        Description copied from class: AbstractDateTimeSerializer
        Convert java.time object to epoch milliseconds instant. Discards zone offset and zone id information.
        Specified by:
        toInstant in class AbstractDateTimeSerializer<T extends java.util.Date>
        Parameters:
        value - date object to convert
        Returns:
        instant
      • formatDefault

        protected java.lang.String formatDefault​(java.util.Date value,
                                                 java.util.Locale locale)
        Description copied from class: AbstractDateTimeSerializer
        Format with default formatter for a given java.time date object. Different default formatter for each date object type is used.
        Specified by:
        formatDefault in class AbstractDateTimeSerializer<T extends java.util.Date>
        Parameters:
        value - date object
        locale - locale from annotation / default not null
        Returns:
        formatted date obj as string
      • formatWithFormatter

        protected java.lang.String formatWithFormatter​(java.util.Date value,
                                                       java.time.format.DateTimeFormatter formatter)
        Description copied from class: AbstractDateTimeSerializer
        Format date object with given formatter.
        Overrides:
        formatWithFormatter in class AbstractDateTimeSerializer<T extends java.util.Date>
        Parameters:
        value - date object to format
        formatter - formatter to format with
        Returns:
        formatted result
      • formatStrictIJson

        protected java.lang.String formatStrictIJson​(java.util.Date value)
        Description copied from class: AbstractDateTimeSerializer
        Format date object as strict IJson date format.
        Overrides:
        formatStrictIJson in class AbstractDateTimeSerializer<T extends java.util.Date>
        Parameters:
        value - value to format
        Returns:
        formatted result
      • toTemporalAccessor

        protected java.time.temporal.TemporalAccessor toTemporalAccessor​(java.util.Date object)
        Description copied from class: AbstractDateTimeSerializer
        Convert date object to TemporalAccessor Only for legacy dates.
        Overrides:
        toTemporalAccessor in class AbstractDateTimeSerializer<T extends java.util.Date>
        Parameters:
        object - date object
        Returns:
        converted TemporalAccessor
      • getDefaultFormatter

        protected abstract java.time.format.DateTimeFormatter getDefaultFormatter()
        Returns default DateTimeFormatter.
        Returns:
        date time formatter