Class AsDeductionTypeSerializer

    • Method Detail

      • forProperty

        public AsDeductionTypeSerializer forProperty​(BeanProperty prop)
        Description copied from class: TypeSerializer
        Method called to create contextual version, to be used for values of given property. This may be the type itself (as is the case for bean properties), or values contained (for Collection or Map valued properties).
        Specified by:
        forProperty in class TypeSerializer
      • writeTypePrefix

        public WritableTypeId writeTypePrefix​(JsonGenerator g,
                                              WritableTypeId idMetadata)
                                       throws java.io.IOException
        Description copied from class: TypeSerializer
        Method called to write initial part of type information for given value, along with possible wrapping to use: details are specified by `typeId` argument. Note that for structured types (Object, Array), this call will add necessary start token so it should NOT be explicitly written, unlike with non-type-id value writes.

        See TypeSerializer.writeTypeSuffix(JsonGenerator, WritableTypeId) for a complete example of typical usage.

        Overrides:
        writeTypePrefix in class TypeSerializerBase
        Parameters:
        g - Generator to use for outputting type id and possible wrapping
        idMetadata - Details of what type id is to be written, how.
        Throws:
        java.io.IOException
      • writeTypeSuffix

        public WritableTypeId writeTypeSuffix​(JsonGenerator g,
                                              WritableTypeId idMetadata)
                                       throws java.io.IOException
        Description copied from class: TypeSerializer
        Method that should be called after TypeSerializer.writeTypePrefix(JsonGenerator, WritableTypeId) and matching value write have been called, passing WritableTypeId returned. Usual idiom is:
         // Indicator generator that type identifier may be needed; generator may write
         // one as suggested, modify information, or take some other action
         // NOTE! For Object/Array types, this will ALSO write start marker!
         WritableTypeId typeIdDef = typeSer.writeTypePrefix(gen,
                  typeSer.typeId(value, JsonToken.START_OBJECT));
        
         // serializing actual value for which TypeId may have been written... like
         // NOTE: do NOT write START_OBJECT before OR END_OBJECT after:
         g.writeStringField("message", "Hello, world!"
        
         // matching type suffix call to let generator chance to add suffix, if any
         // NOTE! For Object/Array types, this will ALSO write end marker!
         typeSer.writeTypeSuffix(gen, typeIdDef);
        
        Overrides:
        writeTypeSuffix in class TypeSerializerBase
        Throws:
        java.io.IOException