public abstract class InstantSerializerBase<T extends java.time.temporal.Temporal>
extends com.fasterxml.jackson.databind.ser.std.StdSerializer<T>
Instant
and related types.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 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) |
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) |
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 generator,
com.fasterxml.jackson.databind.SerializerProvider provider,
com.fasterxml.jackson.databind.jsontype.TypeSerializer serializer) |
protected boolean |
useTimestamp(com.fasterxml.jackson.databind.SerializerProvider provider) |
protected abstract com.fasterxml.jackson.datatype.jsr310.ser.JSR310FormattedSerializerBase<?> |
withFormat(Boolean useTimestamp,
java.time.format.DateTimeFormatter dtf) |
createObjectNode, createSchemaNode, createSchemaNode, findConvertingContentSerializer, findPropertyFilter, getSchema, handledType, isDefaultSerializer, wrapAndThrow, wrapAndThrow
protected final Boolean _useTimestamp
protected final java.time.format.DateTimeFormatter _formatter
_useTimestamp
is true.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)
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
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>
protected boolean useTimestamp(com.fasterxml.jackson.databind.SerializerProvider provider)
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 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
public void serializeWithType(T value, com.fasterxml.jackson.core.JsonGenerator generator, com.fasterxml.jackson.databind.SerializerProvider provider, com.fasterxml.jackson.databind.jsontype.TypeSerializer serializer) throws IOException
serializeWithType
in class com.fasterxml.jackson.databind.JsonSerializer<T>
IOException
Copyright © 2014–2015 FasterXML. All rights reserved.