Class DefaultFormattedTemporalSerde<T extends 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>
- Direct Known Subclasses:
InstantSerde,LocalDateSerde,LocalDateTimeSerde,LocalTimeSerde,OffsetDateTimeSerde,ZonedDateTimeSerde
public abstract class DefaultFormattedTemporalSerde<T extends TemporalAccessor>
extends Object
implements TemporalSerde<T>
Super class that can be used for the default date/time formatting.
-
Nested Class Summary
Nested classes/interfaces inherited from interface io.micronaut.serde.Deserializer
io.micronaut.serde.Deserializer.DecoderContextNested classes/interfaces inherited from interface io.micronaut.serde.Serializer
io.micronaut.serde.Serializer.EncoderContext -
Field Summary
Fields inherited from interface io.micronaut.serde.support.serdes.TemporalSerde
UTC -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedDefaultFormattedTemporalSerde(@NonNull io.micronaut.serde.config.SerdeConfiguration configuration, @NonNull DateTimeFormatter defaultStringFormatter) Allows configuring a default time format for temporal date/time types. -
Method Summary
Modifier and TypeMethodDescriptionprotected DefaultFormattedTemporalSerde<T>createSpecific(io.micronaut.serde.config.SerdeConfiguration configuration) Create the same serde with new configuration.io.micronaut.serde.Deserializer<T>createSpecific(io.micronaut.serde.Deserializer.DecoderContext decoderContext, io.micronaut.core.type.Argument<? super T> context) io.micronaut.serde.Serializer<T>createSpecific(io.micronaut.serde.Serializer.EncoderContext context, io.micronaut.core.type.Argument<? extends T> type) final Tdeserialize(io.micronaut.serde.Decoder decoder, io.micronaut.serde.Deserializer.DecoderContext decoderContext, io.micronaut.core.type.Argument<? super T> type) final voidserialize(io.micronaut.serde.Encoder encoder, io.micronaut.serde.Serializer.EncoderContext context, io.micronaut.core.type.Argument<? extends T> type, T value) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface io.micronaut.serde.Deserializer
allowNull, deserializeNullable, getDefaultValueMethods inherited from interface io.micronaut.serde.Serializer
isAbsent, isEmptyMethods inherited from interface io.micronaut.serde.support.serdes.TemporalSerde
query
-
Constructor Details
-
DefaultFormattedTemporalSerde
protected DefaultFormattedTemporalSerde(@NonNull @NonNull io.micronaut.serde.config.SerdeConfiguration configuration, @NonNull @NonNull DateTimeFormatter defaultStringFormatter) Allows configuring a default time format for temporal date/time types.- Parameters:
configuration- The configurationdefaultStringFormatter- Default string formatter to use if the user hasn't configured one
-
-
Method Details
-
createSpecific
public io.micronaut.serde.Serializer<T> createSpecific(io.micronaut.serde.Serializer.EncoderContext context, io.micronaut.core.type.Argument<? extends T> type) - Specified by:
createSpecificin interfaceio.micronaut.serde.Serializer<T extends TemporalAccessor>- Specified by:
createSpecificin interfaceTemporalSerde<T extends TemporalAccessor>
-
createSpecific
public io.micronaut.serde.Deserializer<T> createSpecific(io.micronaut.serde.Deserializer.DecoderContext decoderContext, io.micronaut.core.type.Argument<? super T> context) throws io.micronaut.serde.exceptions.SerdeException - Specified by:
createSpecificin interfaceio.micronaut.serde.Deserializer<T extends TemporalAccessor>- Specified by:
createSpecificin interfaceTemporalSerde<T extends TemporalAccessor>- Throws:
io.micronaut.serde.exceptions.SerdeException
-
createSpecific
protected DefaultFormattedTemporalSerde<T> createSpecific(io.micronaut.serde.config.SerdeConfiguration configuration) Create the same serde with new configuration.- Parameters:
configuration- The new configuration- Returns:
- The updated serde
-
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 IOException - Specified by:
serializein interfaceio.micronaut.serde.Serializer<T extends TemporalAccessor>- Throws:
IOException
-
deserialize
public final T deserialize(io.micronaut.serde.Decoder decoder, io.micronaut.serde.Deserializer.DecoderContext decoderContext, io.micronaut.core.type.Argument<? super T> type) throws IOException - Specified by:
deserializein interfaceio.micronaut.serde.Deserializer<T extends TemporalAccessor>- Throws:
IOException
-