Top Description Fields Constructors Methods
tools.jackson.databind.ext.javatime.ser

public Class LocalDateSerializer

extends JSR310FormattedSerializerBase<LocalDate>
Class Inheritance
Imports
java.time.LocalDate, java.time.format.DateTimeFormatter, com.fasterxml.jackson.annotation.JsonFormat, tools.jackson.core.JacksonException, .JsonGenerator, .JsonToken, tools.jackson.core.type.WritableTypeId, tools.jackson.databind.*, tools.jackson.databind.jsonFormatVisitors.JsonFormatVisitorWrapper, .JsonStringFormatVisitor, .JsonValueFormat, tools.jackson.databind.jsontype.TypeSerializer

Serializer for Java 8 temporal LocalDates.
Author
Nick Williams

Field Summary

Modifier and TypeField and Description
public static final LocalDateSerializer
Inherited from tools.jackson.databind.ext.javatime.ser.JSR310FormattedSerializerBase:
_formatter_integerListType_shape_useNanoseconds_useTimestamp

Constructor Summary

AccessConstructor and Description
protected
protected
public

Method Summary

Modifier and TypeMethod and Description
protected void
public void
protected JsonToken
serializationShape(SerializationContext ctxt)

Implements abstract tools.jackson.databind.ext.javatime.ser.JSR310SerializerBase.serializationShape.

Overridable helper method used from serializeWithType, to indicate shape of value during serialization; needed to know how type id is to be serialized.

public void
serialize(LocalDate date, JsonGenerator g, SerializationContext ctxt)

Implements abstract tools.jackson.databind.ser.std.StdSerializer.serialize.

Method that can be called to ask implementation to serialize values of type this serializer handles.

public void
serializeWithType(LocalDate value, JsonGenerator g, SerializationContext ctxt, TypeSerializer typeSer)

Overrides tools.jackson.databind.ext.javatime.ser.JSR310SerializerBase.serializeWithType.

Method that can be called to ask implementation to serialize values of type this serializer handles, using specified type serializer for embedding necessary type information.

protected LocalDateSerializer
Inherited from tools.jackson.databind.ext.javatime.ser.JSR310FormattedSerializerBase:
_acceptTimestampVisitor_integerListType_useDateTimeFormatter_useTimestampExplicitOnlycreateContextualgetTimestampsFeatureuseNanosecondsuseTimestampuseTimestampFromGlobalDefaultswithFeatures

Field Detail

INSTANCEback to summary
public static final LocalDateSerializer INSTANCE

Constructor Detail

LocalDateSerializerback to summary
protected LocalDateSerializer()
LocalDateSerializerback to summary
protected LocalDateSerializer(LocalDateSerializer base, DateTimeFormatter dtf, Boolean useTimestamp, JsonFormat.Shape shape)
LocalDateSerializerback to summary
public LocalDateSerializer(DateTimeFormatter formatter)

Method Detail

_serializeAsArrayContentsback to summary
protected void _serializeAsArrayContents(LocalDate value, JsonGenerator g, SerializationContext ctxt) throws JacksonException
acceptJsonFormatVisitorback to summary
public void acceptJsonFormatVisitor(JsonFormatVisitorWrapper visitor, JavaType typeHint)

Overrides tools.jackson.databind.ext.javatime.ser.JSR310FormattedSerializerBase.acceptJsonFormatVisitor.

Implements tools.jackson.databind.jsonFormatVisitors.JsonFormatVisitable.acceptJsonFormatVisitor.

Doc from tools.jackson.databind.ser.std.StdSerializer.acceptJsonFormatVisitor.

Default implementation specifies no format. This behavior is usually overriden by custom serializers.

Annotations
@Override
serializationShapeback to summary
protected JsonToken serializationShape(SerializationContext ctxt)

Implements abstract tools.jackson.databind.ext.javatime.ser.JSR310SerializerBase.serializationShape.

Doc from tools.jackson.databind.ext.javatime.ser.JSR310SerializerBase.serializationShape.

Overridable helper method used from serializeWithType, to indicate shape of value during serialization; needed to know how type id is to be serialized.

Annotations
@Override
serializeback to summary
public void serialize(LocalDate date, JsonGenerator g, SerializationContext ctxt) throws JacksonException

Implements abstract tools.jackson.databind.ser.std.StdSerializer.serialize.

Doc from tools.jackson.databind.ValueSerializer.serialize.

Method that can be called to ask implementation to serialize values of type this serializer handles.

Annotations
@Override
serializeWithTypeback to summary
public void serializeWithType(LocalDate value, JsonGenerator g, SerializationContext ctxt, TypeSerializer typeSer) throws JacksonException

Overrides tools.jackson.databind.ext.javatime.ser.JSR310SerializerBase.serializeWithType.

Doc from tools.jackson.databind.ValueSerializer.serializeWithType.

Method that can be called to ask implementation to serialize values of type this serializer handles, using specified type serializer for embedding necessary type information.

Default implementation will throw UnsupportedOperationException to indicate that proper type handling needs to be implemented.

For simple datatypes written as a single scalar value (JSON String, Number, Boolean), implementation would look like:

  // note: method to call depends on whether this type is serialized as JSON scalar, object or Array!
  typeSer.writeTypePrefixForScalar(value, gen);
  serialize(value, gen, provider);
  typeSer.writeTypeSuffixForScalar(value, gen);
and implementations for type serialized as JSON Arrays or Objects would differ slightly, as START-ARRAY/END-ARRAY and START-OBJECT/END-OBJECT pairs need to be properly handled with respect to serializing of contents.
Annotations
@Override
withFormatback to summary
protected LocalDateSerializer withFormat(DateTimeFormatter dtf, Boolean useTimestamp, JsonFormat.Shape shape)

Implements abstract tools.jackson.databind.ext.javatime.ser.JSR310FormattedSerializerBase.withFormat.

Annotations
@Override