Class AbstractDateTimeSerializer<T>
java.lang.Object
org.eclipse.yasson.internal.serializer.AbstractValueTypeSerializer<T>
org.eclipse.yasson.internal.serializer.AbstractDateTimeSerializer<T>
- Type Parameters:
T- Type to serialize.
- All Implemented Interfaces:
javax.json.bind.serializer.JsonbSerializer<T>
- Direct Known Subclasses:
AbstractDateTypeSerializer,CalendarTypeSerializer,InstantTypeSerializer,LocalDateTimeTypeSerializer,LocalDateTypeSerializer,LocalTimeTypeSerializer,OffsetDateTimeTypeSerializer,OffsetTimeTypeSerializer,SqlTimestampTypeSerializer,XMLGregorianCalendarTypeSerializer,ZonedDateTimeTypeSerializer
Abstract class for converting date objects.
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionAbstractDateTimeSerializer(Customization customization) Creates a new instance. -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract StringformatDefault(T value, Locale locale) Format with default formatter for a given java.time date object.protected StringformatStrictIJson(T value) Format date object as strict IJson date format.protected StringformatWithFormatter(T value, DateTimeFormatter formatter) Format date object with given formatter.protected JsonbDateFormattergetJsonbDateFormatter(JsonbContext context) Returns registered serialization jsonb date formatter.protected DateTimeFormattergetZonedFormatter(DateTimeFormatter formatter) Append UTC zone in case zone is not set on formatter.voidserialize(T obj, javax.json.stream.JsonGenerator generator, javax.json.bind.serializer.SerializationContext ctx) Serializes an object to JSON.protected voidserialize(T obj, javax.json.stream.JsonGenerator generator, Marshaller marshaller) Serializes an object to JSON.protected abstract InstantConvert java.time object to epoch milliseconds instant.toJson(T object, JsonbDateFormatter formatter, JsonbContext jsonbContext) Converts to JSON string.protected TemporalAccessortoTemporalAccessor(T object) Convert date object toTemporalAccessorOnly for legacy dates.Methods inherited from class org.eclipse.yasson.internal.serializer.AbstractValueTypeSerializer
getCustomization
-
Field Details
-
UTC
Default zone id.
-
-
Constructor Details
-
AbstractDateTimeSerializer
Creates a new instance.- Parameters:
customization- Model customization.
-
-
Method Details
-
serialize
public void serialize(T obj, javax.json.stream.JsonGenerator generator, javax.json.bind.serializer.SerializationContext ctx) Description copied from class:AbstractValueTypeSerializerSerializes an object to JSON.- Specified by:
serializein interfacejavax.json.bind.serializer.JsonbSerializer<T>- Overrides:
serializein classAbstractValueTypeSerializer<T>- Parameters:
obj- Object to serialize.generator- JSON generator to use.ctx- JSON-B mapper context.
-
toJson
Converts to JSON string.- Parameters:
object- Object to convert.formatter- Formatter to use.jsonbContext- JSON-B context.- Returns:
- JSON representation of given object.
-
getJsonbDateFormatter
Returns registered serialization jsonb date formatter.- Parameters:
context- context- Returns:
- jsonb formatter
-
getZonedFormatter
Append UTC zone in case zone is not set on formatter.- Parameters:
formatter- formatter- Returns:
- zoned formatter
-
toTemporalAccessor
Convert date object toTemporalAccessorOnly for legacy dates.- Parameters:
object- date object- Returns:
- converted
TemporalAccessor
-
toInstant
Convert java.time object to epoch milliseconds instant. Discards zone offset and zone id information.- Parameters:
value- date object to convert- Returns:
- instant
-
formatDefault
Format with default formatter for a given java.time date object. Different default formatter for each date object type is used.- Parameters:
value- date objectlocale- locale from annotation / default not null- Returns:
- formatted date obj as string
-
formatWithFormatter
Format date object with given formatter.- Parameters:
value- date object to formatformatter- formatter to format with- Returns:
- formatted result
-
formatStrictIJson
Format date object as strict IJson date format.- Parameters:
value- value to format- Returns:
- formatted result
-
serialize
Description copied from class:AbstractValueTypeSerializerSerializes an object to JSON.- Specified by:
serializein classAbstractValueTypeSerializer<T>- Parameters:
obj- Object to serialize.generator- JSON generator to use.marshaller- Marshaller.
-