Class JodaDurationCompatSerializer

java.lang.Object
com.fasterxml.jackson.databind.JsonSerializer<T>
com.fasterxml.jackson.databind.ser.std.StdSerializer<T>
com.fasterxml.jackson.datatype.joda.ser.JodaDateSerializerBase<org.joda.time.Duration>
com.fasterxml.jackson.datatype.joda.ser.DurationSerializer
org.graylog2.jackson.JodaDurationCompatSerializer
All Implemented Interfaces:
com.fasterxml.jackson.databind.jsonFormatVisitors.JsonFormatVisitable, com.fasterxml.jackson.databind.jsonschema.SchemaAware, com.fasterxml.jackson.databind.ser.ContextualSerializer, Serializable

public class JodaDurationCompatSerializer extends com.fasterxml.jackson.datatype.joda.ser.DurationSerializer
A Joda DurationSerializer that ignores the com.fasterxml.jackson.databind.SerializationFeature.WRITE_DURATIONS_AS_TIMESTAMPS setting and always serializes Durations to milliseconds. This became necessary with the Jackson 2.13 update, which forced us to disable WRITE_DURATIONS_AS_TIMESTAMPS to have Duration objects serialized as strings.
See Also:
  • Nested Class Summary

    Nested classes/interfaces inherited from class com.fasterxml.jackson.databind.JsonSerializer

    com.fasterxml.jackson.databind.JsonSerializer.None
  • Field Summary

    Fields inherited from class com.fasterxml.jackson.datatype.joda.ser.JodaDateSerializerBase

    _defaultNumericShape, _featureForNumeric, _format, _shapeOverride, FORMAT_ARRAY, FORMAT_STRING, FORMAT_TIMESTAMP

    Fields inherited from class com.fasterxml.jackson.databind.ser.std.StdSerializer

    _handledType
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    serialize(org.joda.time.Duration value, com.fasterxml.jackson.core.JsonGenerator gen, com.fasterxml.jackson.databind.SerializerProvider provider)
     
    void
    serializeWithType(org.joda.time.Duration arg0, com.fasterxml.jackson.core.JsonGenerator arg1, com.fasterxml.jackson.databind.SerializerProvider arg2, com.fasterxml.jackson.databind.jsontype.TypeSerializer arg3)
     

    Methods inherited from class com.fasterxml.jackson.datatype.joda.ser.DurationSerializer

    isEmpty, withFormat

    Methods inherited from class com.fasterxml.jackson.datatype.joda.ser.JodaDateSerializerBase

    _serializationShape, acceptJsonFormatVisitor, createContextual, getSchema, writeWithZoneId

    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

    Methods inherited from class com.fasterxml.jackson.databind.JsonSerializer

    getDelegatee, isEmpty, isUnwrappingSerializer, properties, replaceDelegatee, unwrappingSerializer, usesObjectId, withFilterId, withIgnoredProperties

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • JodaDurationCompatSerializer

      public JodaDurationCompatSerializer()
  • Method Details

    • serialize

      public void serialize(org.joda.time.Duration value, com.fasterxml.jackson.core.JsonGenerator gen, com.fasterxml.jackson.databind.SerializerProvider provider) throws IOException
      Overrides:
      serialize in class com.fasterxml.jackson.datatype.joda.ser.DurationSerializer
      Throws:
      IOException
    • serializeWithType

      public void serializeWithType(org.joda.time.Duration arg0, com.fasterxml.jackson.core.JsonGenerator arg1, com.fasterxml.jackson.databind.SerializerProvider arg2, com.fasterxml.jackson.databind.jsontype.TypeSerializer arg3) throws IOException
      Overrides:
      serializeWithType in class com.fasterxml.jackson.databind.JsonSerializer<T extends Object>
      Throws:
      IOException