Class OffsetTimeSerializer
- java.lang.Object
-
- com.fasterxml.jackson.databind.JsonSerializer<T>
-
- com.fasterxml.jackson.databind.ser.std.StdSerializer<T>
-
- com.fasterxml.jackson.datatype.threetenbp.ser.OffsetTimeSerializer
-
- All Implemented Interfaces:
com.fasterxml.jackson.databind.jsonFormatVisitors.JsonFormatVisitable,com.fasterxml.jackson.databind.jsonschema.SchemaAware,com.fasterxml.jackson.databind.ser.ContextualSerializer,Serializable
public class OffsetTimeSerializer extends com.fasterxml.jackson.databind.ser.std.StdSerializer<T>Serializer for ThreeTen temporalOffsetTimes.- Since:
- 2.2
- Author:
- Nick Williams
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected org.threeten.bp.format.DateTimeFormatter_formatterSpecific 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#_useTimestampis true.protected com.fasterxml.jackson.databind.JavaType_integerListTypeLazily constructedJavaTyperepresenting typeList<Integer>.protected com.fasterxml.jackson.annotation.JsonFormat.Shape_shapeprotected Boolean_useNanosecondsFlag that indicates that numeric timestamp values must be written using nanosecond timestamps if the datatype supports such resolution, regardless of other settings.protected Boolean_useTimestampFlag that indicates that serialization must be done as the Java timestamp, regardless of other settings.static OffsetTimeSerializerINSTANCE
-
Constructor Summary
Constructors Modifier Constructor Description protectedOffsetTimeSerializer()protectedOffsetTimeSerializer(OffsetTimeSerializer base, Boolean useTimestamp, Boolean useNanoseconds, org.threeten.bp.format.DateTimeFormatter dtf)protectedOffsetTimeSerializer(OffsetTimeSerializer base, Boolean useTimestamp, org.threeten.bp.format.DateTimeFormatter dtf)
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description protected void_acceptTimestampVisitor(com.fasterxml.jackson.databind.jsonFormatVisitors.JsonFormatVisitorWrapper visitor, com.fasterxml.jackson.databind.JavaType typeHint)protected com.fasterxml.jackson.databind.JavaType_integerListType(com.fasterxml.jackson.databind.SerializerProvider prov)protected org.threeten.bp.format.DateTimeFormatter_useDateTimeFormatter(com.fasterxml.jackson.databind.SerializerProvider prov, com.fasterxml.jackson.annotation.JsonFormat.Value format)protected boolean_useTimestampExplicitOnly(com.fasterxml.jackson.databind.SerializerProvider provider)voidacceptJsonFormatVisitor(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.JsonNodegetSchema(com.fasterxml.jackson.databind.SerializerProvider provider, Type typeHint)protected com.fasterxml.jackson.databind.SerializationFeaturegetTimestampsFeature()Overridable method that determinesSerializationFeaturethat is used as the global default in determining if date/time value serialized should use numeric format ("timestamp") or not.protected com.fasterxml.jackson.core.JsonTokenserializationShape(com.fasterxml.jackson.databind.SerializerProvider provider)Overridable helper method used fromJsonSerializer.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.voidserialize(org.threeten.bp.OffsetTime time, com.fasterxml.jackson.core.JsonGenerator g, com.fasterxml.jackson.databind.SerializerProvider provider)voidserializeWithType(org.threeten.bp.OffsetTime value, com.fasterxml.jackson.core.JsonGenerator g, com.fasterxml.jackson.databind.SerializerProvider provider, com.fasterxml.jackson.databind.jsontype.TypeSerializer typeSer)protected booleanuseNanoseconds(com.fasterxml.jackson.databind.SerializerProvider provider)protected booleanuseTimestamp(com.fasterxml.jackson.databind.SerializerProvider provider)protected com.fasterxml.jackson.datatype.threetenbp.ser.ThreeTenFormattedSerializerBase<?>withFeatures(Boolean writeZoneId)Deprecated.protected com.fasterxml.jackson.datatype.threetenbp.ser.ThreeTenFormattedSerializerBase<?>withFeatures(Boolean writeZoneId, Boolean writeNanoseconds)protected OffsetTimeSerializerwithFormat(Boolean useTimestamp, org.threeten.bp.format.DateTimeFormatter dtf, com.fasterxml.jackson.annotation.JsonFormat.Shape shape)-
Methods inherited from class com.fasterxml.jackson.databind.ser.std.StdSerializer
_neitherNull, _nonEmpty, createSchemaNode, createSchemaNode, findAnnotatedContentSerializer, findContextualConvertingSerializer, findConvertingContentSerializer, findFormatFeature, findFormatOverrides, findIncludeOverrides, findPropertyFilter, getSchema, handledType, isDefaultSerializer, visitArrayFormat, visitArrayFormat, visitFloatFormat, visitIntFormat, visitIntFormat, visitStringFormat, visitStringFormat, wrapAndThrow, wrapAndThrow
-
-
-
-
Field Detail
-
INSTANCE
public static final OffsetTimeSerializer INSTANCE
-
_useTimestamp
protected final Boolean _useTimestamp
Flag that indicates that serialization must be done as the Java timestamp, regardless of other settings.
-
_useNanoseconds
protected final Boolean _useNanoseconds
Flag that indicates that numeric timestamp values must be written using nanosecond timestamps if the datatype supports such resolution, regardless of other settings.
-
_formatter
protected final org.threeten.bp.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#_useTimestampis true.
-
_shape
protected final com.fasterxml.jackson.annotation.JsonFormat.Shape _shape
-
_integerListType
protected transient volatile com.fasterxml.jackson.databind.JavaType _integerListType
Lazily constructedJavaTyperepresenting typeList<Integer>.- Since:
- 2.10
-
-
Constructor Detail
-
OffsetTimeSerializer
protected OffsetTimeSerializer()
-
OffsetTimeSerializer
protected OffsetTimeSerializer(OffsetTimeSerializer base, Boolean useTimestamp, org.threeten.bp.format.DateTimeFormatter dtf)
-
OffsetTimeSerializer
protected OffsetTimeSerializer(OffsetTimeSerializer base, Boolean useTimestamp, Boolean useNanoseconds, org.threeten.bp.format.DateTimeFormatter dtf)
-
-
Method Detail
-
withFormat
protected OffsetTimeSerializer withFormat(Boolean useTimestamp, org.threeten.bp.format.DateTimeFormatter dtf, com.fasterxml.jackson.annotation.JsonFormat.Shape shape)
-
serialize
public void serialize(org.threeten.bp.OffsetTime time, com.fasterxml.jackson.core.JsonGenerator g, com.fasterxml.jackson.databind.SerializerProvider provider) throws IOException- Specified by:
serializein classcom.fasterxml.jackson.databind.ser.std.StdSerializer<org.threeten.bp.OffsetTime>- Throws:
IOException
-
serializeWithType
public void serializeWithType(org.threeten.bp.OffsetTime value, com.fasterxml.jackson.core.JsonGenerator g, com.fasterxml.jackson.databind.SerializerProvider provider, com.fasterxml.jackson.databind.jsontype.TypeSerializer typeSer) throws IOException- Throws:
IOException
-
serializationShape
protected com.fasterxml.jackson.core.JsonToken serializationShape(com.fasterxml.jackson.databind.SerializerProvider provider)
Overridable helper method used fromJsonSerializer.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.
-
withFeatures
protected com.fasterxml.jackson.datatype.threetenbp.ser.ThreeTenFormattedSerializerBase<?> withFeatures(Boolean writeZoneId, Boolean writeNanoseconds)
-
withFeatures
@Deprecated protected com.fasterxml.jackson.datatype.threetenbp.ser.ThreeTenFormattedSerializerBase<?> withFeatures(Boolean writeZoneId)
Deprecated.- Since:
- 2.8
-
createContextual
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- Specified by:
createContextualin interfacecom.fasterxml.jackson.databind.ser.ContextualSerializer- Throws:
com.fasterxml.jackson.databind.JsonMappingException
-
getSchema
public com.fasterxml.jackson.databind.JsonNode getSchema(com.fasterxml.jackson.databind.SerializerProvider provider, Type typeHint)- Specified by:
getSchemain interfacecom.fasterxml.jackson.databind.jsonschema.SchemaAware- Overrides:
getSchemain classcom.fasterxml.jackson.databind.ser.std.StdSerializer<T>
-
acceptJsonFormatVisitor
public void acceptJsonFormatVisitor(com.fasterxml.jackson.databind.jsonFormatVisitors.JsonFormatVisitorWrapper visitor, com.fasterxml.jackson.databind.JavaType typeHint) throws com.fasterxml.jackson.databind.JsonMappingException- Specified by:
acceptJsonFormatVisitorin interfacecom.fasterxml.jackson.databind.jsonFormatVisitors.JsonFormatVisitable- Overrides:
acceptJsonFormatVisitorin classcom.fasterxml.jackson.databind.ser.std.StdSerializer<T>- Throws:
com.fasterxml.jackson.databind.JsonMappingException
-
_acceptTimestampVisitor
protected void _acceptTimestampVisitor(com.fasterxml.jackson.databind.jsonFormatVisitors.JsonFormatVisitorWrapper visitor, com.fasterxml.jackson.databind.JavaType typeHint) throws com.fasterxml.jackson.databind.JsonMappingException- Throws:
com.fasterxml.jackson.databind.JsonMappingException
-
_integerListType
protected com.fasterxml.jackson.databind.JavaType _integerListType(com.fasterxml.jackson.databind.SerializerProvider prov)
-
getTimestampsFeature
protected com.fasterxml.jackson.databind.SerializationFeature getTimestampsFeature()
Overridable method that determinesSerializationFeaturethat is used as the global default in determining if date/time value serialized should use numeric format ("timestamp") or not.Note that this feature is just the baseline setting and may be overridden on per-type or per-property basis.
- Since:
- 2.10
-
useTimestamp
protected boolean useTimestamp(com.fasterxml.jackson.databind.SerializerProvider provider)
-
_useTimestampExplicitOnly
protected boolean _useTimestampExplicitOnly(com.fasterxml.jackson.databind.SerializerProvider provider)
-
useNanoseconds
protected boolean useNanoseconds(com.fasterxml.jackson.databind.SerializerProvider provider)
-
_useDateTimeFormatter
protected org.threeten.bp.format.DateTimeFormatter _useDateTimeFormatter(com.fasterxml.jackson.databind.SerializerProvider prov, com.fasterxml.jackson.annotation.JsonFormat.Value format)
-
-