Class LocalDateSerde
java.lang.Object
io.micronaut.serde.support.serdes.DefaultFormattedTemporalSerde<LocalDate>
io.micronaut.serde.support.serdes.LocalDateSerde
- All Implemented Interfaces:
io.micronaut.core.order.Ordered, Deserializer<LocalDate>, FormattedDeserializer<LocalDate>, FormattedSerde<LocalDate>, FormattedSerializer<LocalDate>, Serde<LocalDate>, Serializer<LocalDate>, DeserializerRegistrar<LocalDate>, SerdeRegistrar<LocalDate>, TemporalSerde<LocalDate>, SerializerRegistrar<LocalDate>
public final class LocalDateSerde
extends DefaultFormattedTemporalSerde<LocalDate>
implements TemporalSerde<LocalDate>, SerdeRegistrar<LocalDate>
Local date serde. Slightly different to
NumericSupportTemporalSerde, we only support one
unit (epoch day)-
Nested Class Summary
Nested classes/interfaces inherited from interface Deserializer
Deserializer.DecoderContextNested classes/interfaces inherited from interface Serializer
Serializer.EncoderContext -
Field Summary
Fields inherited from interface io.micronaut.core.order.Ordered
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCEFields inherited from interface TemporalSerde
UTC -
Constructor Summary
ConstructorsConstructorDescriptionLocalDateSerde(SerdeConfiguration configuration) Allows configuring a default time format for temporal date/time types. -
Method Summary
Modifier and TypeMethodDescriptioncreateSpecific(Deserializer.DecoderContext decoderContext, io.micronaut.core.type.Argument<? super LocalDate> type, FormatConfiguration format) Create a more specific deserializer for the given definition and format configuration.createSpecific(Serializer.EncoderContext context, io.micronaut.core.type.Argument<? extends LocalDate> type, FormatConfiguration format) Create a more specific serializer for the given definition and format configuration.protected DefaultFormattedTemporalSerde<LocalDate> createSpecific(DateTimeFormatter stringFormatter, SerdeConfiguration.TimeShape timeWriteShape, SerdeConfiguration.NumericTimeUnit numericUnit) Create the same serde with a new string formatter and explicit shape-derived values.io.micronaut.core.type.Argument<LocalDate> getType()query()Methods inherited from class DefaultFormattedTemporalSerde
createFormatter, createSpecific, createSpecific, createSpecific, createSpecific, createSpecificForDeserialization, createSpecificForDeserialization, createSpecificForSerialization, defaultStringFormatter, defaultStringFormatter, defaultStringFormatter, deserialize, serializeMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface Deserializer
deserialize, deserializeNullable, getDefaultValueMethods inherited from interface io.micronaut.core.order.Ordered
getOrderMethods inherited from interface SerdeRegistrar
getTypesMethods inherited from interface Serializer
isAbsent, isDefault, isEmpty, serializeMethods inherited from interface TemporalSerde
createSpecific, createSpecific
-
Constructor Details
-
LocalDateSerde
Allows configuring a default time format for temporal date/time types.- Parameters:
configuration- The configuration
-
-
Method Details
-
query
- Specified by:
queryin interfaceTemporalSerde<LocalDate>- Returns:
- The temporal query for the type.
-
createSpecific
public Serializer<LocalDate> createSpecific(Serializer.EncoderContext context, io.micronaut.core.type.Argument<? extends LocalDate> type, FormatConfiguration format) Description copied from interface:FormattedSerializerCreate a more specific serializer for the given definition and format configuration.- Specified by:
createSpecificin interfaceFormattedSerializer<LocalDate>- Specified by:
createSpecificin interfaceTemporalSerde<LocalDate>- Overrides:
createSpecificin classDefaultFormattedTemporalSerde<LocalDate>- Parameters:
context- The encoder contexttype- The type definition including any annotation metadataformat- The format configuration- Returns:
- The more specific serializer
-
createSpecific
public Deserializer<LocalDate> createSpecific(Deserializer.DecoderContext decoderContext, io.micronaut.core.type.Argument<? super LocalDate> type, FormatConfiguration format) throws SerdeException Description copied from interface:FormattedDeserializerCreate a more specific deserializer for the given definition and format configuration.- Specified by:
createSpecificin interfaceFormattedDeserializer<LocalDate>- Specified by:
createSpecificin interfaceTemporalSerde<LocalDate>- Overrides:
createSpecificin classDefaultFormattedTemporalSerde<LocalDate>- Parameters:
decoderContext- The decoder contexttype- The type definition including any annotation metadataformat- The format configuration- Returns:
- The more specific deserializer
- Throws:
SerdeException- If the deserializer cannot be selected
-
createSpecific
protected DefaultFormattedTemporalSerde<LocalDate> createSpecific(DateTimeFormatter stringFormatter, SerdeConfiguration.TimeShape timeWriteShape, SerdeConfiguration.NumericTimeUnit numericUnit) Description copied from class:DefaultFormattedTemporalSerdeCreate the same serde with a new string formatter and explicit shape-derived values.- Overrides:
createSpecificin classDefaultFormattedTemporalSerde<LocalDate>- Parameters:
stringFormatter- The resolved string formattertimeWriteShape- The time write shapenumericUnit- The numeric time unit- Returns:
- The updated serde
-
getType
- Specified by:
getTypein interfaceDeserializerRegistrar<LocalDate>- Specified by:
getTypein interfaceSerdeRegistrar<LocalDate>- Specified by:
getTypein interfaceSerializerRegistrar<LocalDate>- Returns:
- The serde argument type
-