Top Description Fields Constructors Methods
tools.jackson.databind.ser.jdk

public Class StringCollectionSerializer

extends StaticListSerializerBase<Collection<String>>
Class Inheritance
Annotations
@JacksonStdImpl
Imports
java.util.*, tools.jackson.core.*, tools.jackson.core.type.WritableTypeId, tools.jackson.databind.*, tools.jackson.databind.annotation.JacksonStdImpl, tools.jackson.databind.jsonFormatVisitors.JsonArrayFormatVisitor, .JsonFormatTypes, tools.jackson.databind.jsontype.TypeSerializer

Efficient implement for serializing Collections that contain Strings. The only complexity is due to possibility that serializer for String may be override; because of this, logic is needed to ensure that the default serializer is in use to use fastest mode, or if not, to defer to custom String serializer.

Field Summary

Modifier and TypeField and Description
public static final StringCollectionSerializer
Inherited from tools.jackson.databind.ser.jdk.StaticListSerializerBase:
_unwrapSingle

Constructor Summary

AccessConstructor and Description
protected
protected

Method Summary

Modifier and TypeMethod and Description
public ValueSerializer<?>
protected void
protected JsonNode
public void
serialize(Collection<String> value, JsonGenerator g, SerializationContext provider)

Implements abstract tools.jackson.databind.ser.std.StdSerializer.serialize.

Method that can be called to ask implementation to serialize values of type this serializer handles.

private final void
public void
serializeWithType(Collection<String> value, JsonGenerator g, SerializationContext ctxt, TypeSerializer typeSer)

Implements abstract tools.jackson.databind.ser.jdk.StaticListSerializerBase.serializeWithType.

Method that can be called to ask implementation to serialize values of type this serializer handles, using specified type serializer for embedding necessary type information.

Inherited from tools.jackson.databind.ser.jdk.StaticListSerializerBase:
acceptJsonFormatVisitorcreateContextualisEmpty

Field Detail

instanceback to summary
public static final StringCollectionSerializer instance

Constructor Detail

StringCollectionSerializerback to summary
protected StringCollectionSerializer()
StringCollectionSerializerback to summary
protected StringCollectionSerializer(StringCollectionSerializer src, Boolean unwrapSingle)

Method Detail

_withResolvedback to summary
public ValueSerializer<?> _withResolved(BeanProperty prop, Boolean unwrapSingle)

Implements abstract tools.jackson.databind.ser.jdk.StaticListSerializerBase._withResolved.

Annotations
@Override
acceptContentVisitorback to summary
protected void acceptContentVisitor(JsonArrayFormatVisitor visitor)

Implements abstract tools.jackson.databind.ser.jdk.StaticListSerializerBase.acceptContentVisitor.

Annotations
@Override
contentSchemaback to summary
protected JsonNode contentSchema()

Implements abstract tools.jackson.databind.ser.jdk.StaticListSerializerBase.contentSchema.

Annotations
@Override
serializeback to summary
public void serialize(Collection<String> value, JsonGenerator g, SerializationContext provider) throws JacksonException

Implements abstract tools.jackson.databind.ser.std.StdSerializer.serialize.

Doc from tools.jackson.databind.ValueSerializer.serialize.

Method that can be called to ask implementation to serialize values of type this serializer handles.

Annotations
@Override
serializeContentsback to summary
private final void serializeContents(Collection<String> value, JsonGenerator g, SerializationContext provider) throws JacksonException
serializeWithTypeback to summary
public void serializeWithType(Collection<String> value, JsonGenerator g, SerializationContext ctxt, TypeSerializer typeSer) throws JacksonException

Implements abstract tools.jackson.databind.ser.jdk.StaticListSerializerBase.serializeWithType.

Doc from tools.jackson.databind.ValueSerializer.serializeWithType.

Method that can be called to ask implementation to serialize values of type this serializer handles, using specified type serializer for embedding necessary type information.

Default implementation will throw UnsupportedOperationException to indicate that proper type handling needs to be implemented.

For simple datatypes written as a single scalar value (JSON String, Number, Boolean), implementation would look like:

  // note: method to call depends on whether this type is serialized as JSON scalar, object or Array!
  typeSer.writeTypePrefixForScalar(value, gen);
  serialize(value, gen, provider);
  typeSer.writeTypeSuffixForScalar(value, gen);
and implementations for type serialized as JSON Arrays or Objects would differ slightly, as START-ARRAY/END-ARRAY and START-OBJECT/END-OBJECT pairs need to be properly handled with respect to serializing of contents.
Annotations
@Override