public abstract class InstantSerializerBase<T extends java.time.temporal.Temporal>
extends com.fasterxml.jackson.databind.ser.std.StdSerializer<T>
Instant
.Modifier and Type | Field and Description |
---|---|
protected java.time.format.DateTimeFormatter |
_formatter
Specific format to use, if not default format: non null value
also indicates that serialization is to be done as JSON String,
not numeric timestamp, unless
_useTimestamp is true. |
protected com.fasterxml.jackson.annotation.JsonFormat.Shape |
_shape |
protected Boolean |
_useTimestamp
Flag that indicates that serialization must be done as the
Java timestamp, regardless of other settings.
|
Modifier | Constructor and Description |
---|---|
protected |
InstantSerializerBase(Class<T> supportedType,
java.util.function.ToLongFunction<T> getEpochMillis,
java.util.function.ToLongFunction<T> getEpochSeconds,
java.util.function.ToIntFunction<T> getNanoseconds,
java.time.format.DateTimeFormatter formatter) |
protected |
InstantSerializerBase(InstantSerializerBase<T> base,
Boolean useTimestamp,
java.time.format.DateTimeFormatter dtf) |
Modifier and Type | Method and Description |
---|---|
protected void |
_acceptTimestampVisitor(com.fasterxml.jackson.databind.jsonFormatVisitors.JsonFormatVisitorWrapper visitor,
com.fasterxml.jackson.databind.JavaType typeHint) |
protected boolean |
_useTimestampExplicitOnly(com.fasterxml.jackson.databind.SerializerProvider provider) |
void |
acceptJsonFormatVisitor(com.fasterxml.jackson.databind.jsonFormatVisitors.JsonFormatVisitorWrapper visitor,
com.fasterxml.jackson.databind.JavaType typeHint) |
com.fasterxml.jackson.databind.JsonSerializer<?> |
createContextual(com.fasterxml.jackson.databind.SerializerProvider prov,
com.fasterxml.jackson.databind.BeanProperty property) |
com.fasterxml.jackson.databind.JsonNode |
getSchema(com.fasterxml.jackson.databind.SerializerProvider provider,
Type typeHint) |
protected com.fasterxml.jackson.core.JsonToken |
serializationShape(com.fasterxml.jackson.databind.SerializerProvider provider)
Overridable helper method used from
serializeWithType(T, com.fasterxml.jackson.core.JsonGenerator, com.fasterxml.jackson.databind.SerializerProvider, com.fasterxml.jackson.databind.jsontype.TypeSerializer) , to indicate
shape of value during serialization; needed to know how type id is to be
serialized. |
void |
serialize(T value,
com.fasterxml.jackson.core.JsonGenerator generator,
com.fasterxml.jackson.databind.SerializerProvider provider) |
void |
serializeWithType(T value,
com.fasterxml.jackson.core.JsonGenerator g,
com.fasterxml.jackson.databind.SerializerProvider provider,
com.fasterxml.jackson.databind.jsontype.TypeSerializer typeSer) |
protected boolean |
useTimestamp(com.fasterxml.jackson.databind.SerializerProvider provider) |
protected com.fasterxml.jackson.datatype.jsr310.ser.JSR310FormattedSerializerBase<?> |
withFeatures(Boolean writeZoneId) |
protected abstract com.fasterxml.jackson.datatype.jsr310.ser.JSR310FormattedSerializerBase<?> |
withFormat(Boolean useTimestamp,
java.time.format.DateTimeFormatter dtf,
com.fasterxml.jackson.annotation.JsonFormat.Shape shape) |
_neitherNull, _nonEmpty, createSchemaNode, createSchemaNode, findAnnotatedContentSerializer, findContextualConvertingSerializer, findConvertingContentSerializer, findFormatFeature, findFormatOverrides, findIncludeOverrides, findPropertyFilter, getSchema, handledType, isDefaultSerializer, visitArrayFormat, visitArrayFormat, visitFloatFormat, visitIntFormat, visitIntFormat, visitStringFormat, visitStringFormat, wrapAndThrow, wrapAndThrow
protected final Boolean _useTimestamp
protected final java.time.format.DateTimeFormatter _formatter
_useTimestamp
is true.protected final com.fasterxml.jackson.annotation.JsonFormat.Shape _shape
protected InstantSerializerBase(Class<T> supportedType, java.util.function.ToLongFunction<T> getEpochMillis, java.util.function.ToLongFunction<T> getEpochSeconds, java.util.function.ToIntFunction<T> getNanoseconds, java.time.format.DateTimeFormatter formatter)
protected InstantSerializerBase(InstantSerializerBase<T> base, Boolean useTimestamp, java.time.format.DateTimeFormatter dtf)
protected abstract com.fasterxml.jackson.datatype.jsr310.ser.JSR310FormattedSerializerBase<?> withFormat(Boolean useTimestamp, java.time.format.DateTimeFormatter dtf, com.fasterxml.jackson.annotation.JsonFormat.Shape shape)
public void serialize(T value, com.fasterxml.jackson.core.JsonGenerator generator, com.fasterxml.jackson.databind.SerializerProvider provider) throws IOException
serialize
in class com.fasterxml.jackson.databind.ser.std.StdSerializer<T extends java.time.temporal.Temporal>
IOException
protected void _acceptTimestampVisitor(com.fasterxml.jackson.databind.jsonFormatVisitors.JsonFormatVisitorWrapper visitor, com.fasterxml.jackson.databind.JavaType typeHint) throws com.fasterxml.jackson.databind.JsonMappingException
com.fasterxml.jackson.databind.JsonMappingException
protected com.fasterxml.jackson.core.JsonToken serializationShape(com.fasterxml.jackson.databind.SerializerProvider provider)
serializeWithType(T, com.fasterxml.jackson.core.JsonGenerator, com.fasterxml.jackson.databind.SerializerProvider, com.fasterxml.jackson.databind.jsontype.TypeSerializer)
, to indicate
shape of value during serialization; needed to know how type id is to be
serialized.protected com.fasterxml.jackson.datatype.jsr310.ser.JSR310FormattedSerializerBase<?> withFeatures(Boolean writeZoneId)
public com.fasterxml.jackson.databind.JsonSerializer<?> createContextual(com.fasterxml.jackson.databind.SerializerProvider prov, com.fasterxml.jackson.databind.BeanProperty property) throws com.fasterxml.jackson.databind.JsonMappingException
createContextual
in interface com.fasterxml.jackson.databind.ser.ContextualSerializer
com.fasterxml.jackson.databind.JsonMappingException
public com.fasterxml.jackson.databind.JsonNode getSchema(com.fasterxml.jackson.databind.SerializerProvider provider, Type typeHint)
getSchema
in interface com.fasterxml.jackson.databind.jsonschema.SchemaAware
getSchema
in class com.fasterxml.jackson.databind.ser.std.StdSerializer<T>
public void acceptJsonFormatVisitor(com.fasterxml.jackson.databind.jsonFormatVisitors.JsonFormatVisitorWrapper visitor, com.fasterxml.jackson.databind.JavaType typeHint) throws com.fasterxml.jackson.databind.JsonMappingException
acceptJsonFormatVisitor
in interface com.fasterxml.jackson.databind.jsonFormatVisitors.JsonFormatVisitable
acceptJsonFormatVisitor
in class com.fasterxml.jackson.databind.ser.std.StdSerializer<T>
com.fasterxml.jackson.databind.JsonMappingException
protected boolean useTimestamp(com.fasterxml.jackson.databind.SerializerProvider provider)
protected boolean _useTimestampExplicitOnly(com.fasterxml.jackson.databind.SerializerProvider provider)
public void serializeWithType(T value, com.fasterxml.jackson.core.JsonGenerator g, com.fasterxml.jackson.databind.SerializerProvider provider, com.fasterxml.jackson.databind.jsontype.TypeSerializer typeSer) throws IOException
serializeWithType
in class com.fasterxml.jackson.databind.JsonSerializer<T>
IOException
Copyright © 2017 FasterXML. All rights reserved.