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

public Class LocalTimeSerializer

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

Serializer for Java 8 temporal LocalTimes.
Author
Nick Williams
Since
2.2

Field Summary

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

Constructor Summary

AccessConstructor and Description
protected
public
protected
LocalTimeSerializer(LocalTimeSerializer base, DateTimeFormatter dtf, Boolean useTimestamp, Boolean useNanoseconds)

Method Summary

Modifier and TypeMethod and Description
protected DateTimeFormatter
private final 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(LocalTime value, 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(LocalTime 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 JSR310FormattedSerializerBase<?>
protected JSR310FormattedSerializerBase<LocalTime>
Inherited from tools.jackson.databind.ext.javatime.ser.JSR310FormattedSerializerBase:
_acceptTimestampVisitor_integerListType_useDateTimeFormatter_useTimestampExplicitOnlycreateContextualgetTimestampsFeatureuseNanosecondsuseTimestampuseTimestampFromGlobalDefaults

Field Detail

INSTANCEback to summary
public static final LocalTimeSerializer INSTANCE

Constructor Detail

LocalTimeSerializerback to summary
protected LocalTimeSerializer()
LocalTimeSerializerback to summary
public LocalTimeSerializer(DateTimeFormatter formatter)
LocalTimeSerializerback to summary
protected LocalTimeSerializer(LocalTimeSerializer base, DateTimeFormatter dtf, Boolean useTimestamp, Boolean useNanoseconds)

Method Detail

_defaultFormatterback to summary
protected DateTimeFormatter _defaultFormatter()
_serializeAsArrayContentsback to summary
private final void _serializeAsArrayContents(LocalTime 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(LocalTime value, 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(LocalTime 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
withFeaturesback to summary
protected JSR310FormattedSerializerBase<?> withFeatures(Boolean writeZoneId, Boolean useNanoseconds)

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

Annotations
@Override
withFormatback to summary
protected JSR310FormattedSerializerBase<LocalTime> withFormat(DateTimeFormatter dtf, Boolean useTimestamp, JsonFormat.Shape shape)

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

Annotations
@Override