Class DefaultFormattedTemporalSerde<T extends java.time.temporal.TemporalAccessor>
- java.lang.Object
-
- io.micronaut.serde.support.serdes.DefaultFormattedTemporalSerde<T>
-
- Type Parameters:
T- The temporal type
- All Implemented Interfaces:
io.micronaut.serde.Deserializer<T>,io.micronaut.serde.Serde<T>,io.micronaut.serde.Serializer<T>,TemporalSerde<T>,io.micronaut.serde.util.NullableDeserializer<T>,io.micronaut.serde.util.NullableSerde<T>
- Direct Known Subclasses:
InstantSerde,LocalDateSerde,LocalDateTimeSerde,LocalTimeSerde,OffsetDateTimeSerde,ZonedDateTimeSerde
public abstract class DefaultFormattedTemporalSerde<T extends java.time.temporal.TemporalAccessor> extends java.lang.Object implements TemporalSerde<T>
Super class that can be used for the default date/time formatting.
-
-
Field Summary
-
Fields inherited from interface io.micronaut.serde.support.serdes.TemporalSerde
UTC
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedDefaultFormattedTemporalSerde(io.micronaut.serde.config.SerdeConfiguration configuration)Allows configuring a default time format for temporal date/time types.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description TdeserializeNonNull(io.micronaut.serde.Decoder decoder, io.micronaut.serde.Deserializer.DecoderContext decoderContext, io.micronaut.core.type.Argument<? super T> type)protected abstract TdeserializeNonNullWithoutFormat(io.micronaut.serde.Decoder decoder, io.micronaut.serde.Deserializer.DecoderContext decoderContext, io.micronaut.core.type.Argument<? super T> type)A method that is invoked when the value is known not to be null.protected abstract java.time.format.DateTimeFormattergetDefaultFormatter()voidserialize(io.micronaut.serde.Encoder encoder, io.micronaut.serde.Serializer.EncoderContext context, io.micronaut.core.type.Argument<? extends T> type, T value)protected abstract voidserializeWithoutFormat(io.micronaut.serde.Encoder encoder, io.micronaut.serde.Serializer.EncoderContext context, T value, io.micronaut.core.type.Argument<? extends T> type)Serializes the given value using the passedEncoder.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface io.micronaut.serde.util.NullableDeserializer
allowNull, deserialize
-
Methods inherited from interface io.micronaut.serde.support.serdes.TemporalSerde
createSpecific, createSpecific, query
-
-
-
-
Method Detail
-
getDefaultFormatter
@NonNull protected abstract java.time.format.DateTimeFormatter getDefaultFormatter()
- Returns:
- The default formatter.
-
serialize
public final void serialize(io.micronaut.serde.Encoder encoder, io.micronaut.serde.Serializer.EncoderContext context, io.micronaut.core.type.Argument<? extends T> type, T value) throws java.io.IOException- Specified by:
serializein interfaceio.micronaut.serde.Serializer<T extends java.time.temporal.TemporalAccessor>- Throws:
java.io.IOException
-
deserializeNonNull
public final T deserializeNonNull(io.micronaut.serde.Decoder decoder, io.micronaut.serde.Deserializer.DecoderContext decoderContext, io.micronaut.core.type.Argument<? super T> type) throws java.io.IOException
- Specified by:
deserializeNonNullin interfaceio.micronaut.serde.util.NullableDeserializer<T extends java.time.temporal.TemporalAccessor>- Throws:
java.io.IOException
-
serializeWithoutFormat
protected abstract void serializeWithoutFormat(io.micronaut.serde.Encoder encoder, io.micronaut.serde.Serializer.EncoderContext context, T value, io.micronaut.core.type.Argument<? extends T> type) throws java.io.IOExceptionSerializes the given value using the passedEncoder.- Parameters:
encoder- The encoder to usecontext- The encoder context, nevernullvalue- The value, can benulltype- Models the generic type of the value- Throws:
java.io.IOException- If an error occurs during serialization
-
deserializeNonNullWithoutFormat
protected abstract T deserializeNonNullWithoutFormat(io.micronaut.serde.Decoder decoder, io.micronaut.serde.Deserializer.DecoderContext decoderContext, io.micronaut.core.type.Argument<? super T> type) throws java.io.IOException
A method that is invoked when the value is known not to be null.- Parameters:
decoder- The decoderdecoderContext- The decoder contexttype- The type- Returns:
- The value
- Throws:
java.io.IOException- if something goes wrong during deserialization
-
-