## com.fasterxml.jackson.databind.ser.std
Class ArraySerializerBase<T>

    java.lang.Object
      com.fasterxml.jackson.databind.JsonSerializer<T>
          com.fasterxml.jackson.databind.ser.std.StdSerializer<T>
              com.fasterxml.jackson.databind.ser.ContainerSerializer<T>
                  com.fasterxml.jackson.databind.ser.std.ArraySerializerBase<T>

Type Parameters:
  `T` -

All Implemented Interfaces:
  SchemaAware

Direct Known Subclasses:
  ObjectArraySerializer, StdArraySerializers.BooleanArraySerializer, StdArraySerializers.DoubleArraySerializer, StdArraySerializers.IntArraySerializer, StdArraySerializers.TypedPrimitiveArraySerializer, StringArraySerializer

    public abstract class ArraySerializerBase<T>

extends ContainerSerializer<T>

Intermediate base class for serializers used for various Java arrays.

Nested Class Summary

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

Field Summary
`protected BeanProperty` `_property`

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

Constructor Summary
`protected` `ArraySerializerBase(ArraySerializerBase<?> src)`
`protected` `ArraySerializerBase(ArraySerializerBase<?> src, BeanProperty property)`
`protected` `ArraySerializerBase(Class<T> cls)`
`protected` `ArraySerializerBase(Class<T> cls, BeanProperty property)`

Method Summary
`void` `serialize(T value, JsonGenerator jgen, SerializerProvider provider)` Method that can be called to ask implementation to serialize values of type this serializer handles.
`protected abstract void` `serializeContents(T value, JsonGenerator jgen, SerializerProvider provider)`
`void` `serializeWithType(T value, JsonGenerator jgen, SerializerProvider provider, TypeSerializer typeSer)` 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.

Methods inherited from class com.fasterxml.jackson.databind.ser.ContainerSerializer
`_withValueTypeSerializer, getContentSerializer, getContentType, hasSingleElement, isEmpty, withValueTypeSerializer`

Methods inherited from class com.fasterxml.jackson.databind.ser.std.StdSerializer
`createObjectNode, createSchemaNode, createSchemaNode, getSchema, handledType, isDefaultSerializer, wrapAndThrow, wrapAndThrow`

Methods inherited from class com.fasterxml.jackson.databind.JsonSerializer
`isUnwrappingSerializer, unwrappingSerializer, usesObjectId`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### _property

    protected final BeanProperty _property

Constructor Detail

### ArraySerializerBase

    protected ArraySerializerBase(Class<T> cls)

### ArraySerializerBase

    protected ArraySerializerBase(Class<T> cls,
                                  BeanProperty property)

### ArraySerializerBase

    protected ArraySerializerBase(ArraySerializerBase<?> src)

### ArraySerializerBase

    protected ArraySerializerBase(ArraySerializerBase<?> src,
                                  BeanProperty property)

Method Detail

### serialize

    public final void serialize(T value,
                                JsonGenerator jgen,
                                SerializerProvider provider)
                         throws IOException,
                                JsonGenerationException

  Description copied from class: `JsonSerializer`
  Method that can be called to ask implementation to serialize values of type this serializer handles.

  Specified by:
    `serialize` in class `StdSerializer<T>`
  Parameters:
    `value` - Value to serialize; can not be null.
    `jgen` - Generator used to output resulting Json content
    `provider` - Provider that can be used to get serializers for serializing Objects value contains, if any.
  Throws:
    `IOException`
    `JsonGenerationException`

### serializeWithType

    public final void serializeWithType(T value,
                                        JsonGenerator jgen,
                                        SerializerProvider provider,
                                        TypeSerializer typeSer)
                                 throws IOException,
                                        JsonGenerationException

  Description copied from class: `JsonSerializer`
  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, jgen);
        serialize(value, jgen, provider);
        typeSer.writeTypeSuffixForScalar(value, jgen);

  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.

  ``
  Overrides:
    `serializeWithType` in class `JsonSerializer<T>`
  Parameters:
    `value` - Value to serialize; can not be null.
    `jgen` - Generator used to output resulting Json content
    `provider` - Provider that can be used to get serializers for serializing Objects value contains, if any.
    `typeSer` - Type serializer to use for including type information
  Throws:
    `IOException`
    `JsonGenerationException`

### serializeContents

    protected abstract void serializeContents(T value,
                                              JsonGenerator jgen,
                                              SerializerProvider provider)
                                       throws IOException,
                                              JsonGenerationException

  Throws:
    `IOException`
    `JsonGenerationException`

Copyright © 2012 fasterxml.com. All Rights Reserved.