Class AbstractDateTypeSerializer<T extends java.util.Date>
- java.lang.Object
-
- org.eclipse.yasson.internal.serializer.AbstractValueTypeSerializer<T>
-
- org.eclipse.yasson.internal.serializer.AbstractDateTimeSerializer<T>
-
- org.eclipse.yasson.internal.serializer.AbstractDateTypeSerializer<T>
-
- 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 forDate
andDate
types.
-
-
Field Summary
-
Fields inherited from class org.eclipse.yasson.internal.serializer.AbstractDateTimeSerializer
UTC
-
-
Constructor Summary
Constructors Constructor Description AbstractDateTypeSerializer(Customization customization)
Creates a new instance.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected java.lang.String
formatDefault(java.util.Date value, java.util.Locale locale)
Format with default formatter for a given java.time date object.protected java.lang.String
formatStrictIJson(java.util.Date value)
Format date object as strict IJson date format.protected java.lang.String
formatWithFormatter(java.util.Date value, java.time.format.DateTimeFormatter formatter)
Format date object with given formatter.protected abstract java.time.format.DateTimeFormatter
getDefaultFormatter()
Returns defaultDateTimeFormatter
.protected java.time.Instant
toInstant(java.util.Date value)
Convert java.time object to epoch milliseconds instant.protected java.time.temporal.TemporalAccessor
toTemporalAccessor(java.util.Date object)
Convert date object toTemporalAccessor
Only for legacy dates.-
Methods inherited from class org.eclipse.yasson.internal.serializer.AbstractDateTimeSerializer
getJsonbDateFormatter, getZonedFormatter, serialize, serialize, toJson
-
Methods inherited from class org.eclipse.yasson.internal.serializer.AbstractValueTypeSerializer
getCustomization
-
-
-
-
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 classAbstractDateTimeSerializer<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 classAbstractDateTimeSerializer<T extends java.util.Date>
- Parameters:
value
- date objectlocale
- 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 classAbstractDateTimeSerializer<T extends java.util.Date>
- Parameters:
value
- date object to formatformatter
- 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 classAbstractDateTimeSerializer<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 toTemporalAccessor
Only for legacy dates.- Overrides:
toTemporalAccessor
in classAbstractDateTimeSerializer<T extends java.util.Date>
- Parameters:
object
- date object- Returns:
- converted
TemporalAccessor
-
getDefaultFormatter
protected abstract java.time.format.DateTimeFormatter getDefaultFormatter()
Returns defaultDateTimeFormatter
.- Returns:
- date time formatter
-
-