## Uses of Class
org.codehaus.jackson.map.SerializerProvider

- Packages that use SerializerProvider
  Package | Description
  --- | ---
  org.codehaus.jackson.map | Contains basic mapper (conversion) functionality that allows for converting between regular streaming json content and Java objects (beans or Tree Model: support for both is via `ObjectMapper` class, as well as convenience methods included in `JsonParser`
  org.codehaus.jackson.map.ext | Contains extended support for "external" packages: things that may or may not be present in runtime environment, but that are commonly enough used so that explicit support can be added.
  org.codehaus.jackson.map.ser | Contains implementation classes of serialization part of data binding.
  org.codehaus.jackson.map.ser.impl | Contains implementation classes of serialization part of data binding.
  org.codehaus.jackson.map.ser.std |
  org.codehaus.jackson.map.type | Package that contains concrete implementations of `JavaType`, as well as the factory (`TypeFactory`) for constructing instances from various input data types (like `Class`, `Type`) and programmatically (for structured types, arrays, `List`s and `Map`s).
  org.codehaus.jackson.map.util | Utility classes for Mapper package.
  org.codehaus.jackson.node | Contains concrete `JsonNode` implementations Jackson uses for the Tree model.
  org.codehaus.jackson.schema | Classes needed for JSON schema support (currently just ability to generate schemas using serialization part of data mapping)
  org.codehaus.jackson.xc | Package that contains XML Compatibility functionality for Jackson, such as handlers for JAXB annotations

- - ### Uses of SerializerProvider in org.codehaus.jackson.map

    Fields in org.codehaus.jackson.map declared as SerializerProvider
    Modifier and Type | Field and Description
    --- | ---
    `protected SerializerProvider` | ObjectWriter.`_provider`
    `protected SerializerProvider` | ObjectMapper.`_serializerProvider` Object that manages access to serializers used for serialization, including caching.

    Methods in org.codehaus.jackson.map that return SerializerProvider
    Modifier and Type | Method and Description
    --- | ---
    `SerializerProvider` | ObjectMapper.`getSerializerProvider()`

    Methods in org.codehaus.jackson.map with parameters of type SerializerProvider
    Modifier and Type | Method and Description
    --- | ---
    `void` | ResolvableSerializer.`resolve(SerializerProvider provider)` Method called after `SerializerProvider` has registered the serializer, but before it has returned it to the caller.
    `void` | JsonSerializable.`serialize(JsonGenerator jgen, SerializerProvider provider)` Deprecated.
    `abstract void` | JsonSerializer.`serialize(T value, JsonGenerator jgen, SerializerProvider provider)` Method that can be called to ask implementation to serialize values of type this serializer handles.
    `void` | JsonSerializableWithType.`serializeWithType(JsonGenerator jgen, SerializerProvider provider, TypeSerializer typeSer)`
    `void` | JsonSerializer.`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.
    `ObjectMapper` | ObjectMapper.`setSerializerProvider(SerializerProvider p)` Method for setting specific `SerializerProvider` to use for handling caching of `JsonSerializer` instances.

    Constructors in org.codehaus.jackson.map with parameters of type SerializerProvider
    Constructor and Description
    `ObjectMapper(JsonFactory jf, SerializerProvider sp, DeserializerProvider dp)`
    `ObjectMapper(JsonFactory jf, SerializerProvider sp, DeserializerProvider dp, SerializationConfig sconfig, DeserializationConfig dconfig)`

  - ### Uses of SerializerProvider in org.codehaus.jackson.map.ext

    Methods in org.codehaus.jackson.map.ext with parameters of type SerializerProvider
    Modifier and Type | Method and Description
    --- | ---
    `JsonNode` | JodaSerializers.DateTimeSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | JodaSerializers.LocalDateTimeSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | JodaSerializers.LocalDateSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | JodaSerializers.DateMidnightSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | DOMSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | CoreXMLSerializers.XMLGregorianCalendarSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `void` | JodaSerializers.DateMidnightSerializer.`serialize(DateMidnight dt, JsonGenerator jgen, SerializerProvider provider)`
    `void` | JodaSerializers.DateTimeSerializer.`serialize(DateTime value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | JodaSerializers.LocalDateSerializer.`serialize(LocalDate dt, JsonGenerator jgen, SerializerProvider provider)`
    `void` | JodaSerializers.LocalDateTimeSerializer.`serialize(LocalDateTime dt, JsonGenerator jgen, SerializerProvider provider)`
    `void` | DOMSerializer.`serialize(Node value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | CoreXMLSerializers.XMLGregorianCalendarSerializer.`serialize(XMLGregorianCalendar value, JsonGenerator jgen, SerializerProvider provider)`

  - ### Uses of SerializerProvider in org.codehaus.jackson.map.ser

    Subclasses of SerializerProvider in org.codehaus.jackson.map.ser
    Modifier and Type | Class and Description
    --- | ---
    `class` | `StdSerializerProvider` Default `SerializerProvider` implementation.

    Methods in org.codehaus.jackson.map.ser with parameters of type SerializerProvider
    Modifier and Type | Method and Description
    --- | ---
    `protected JsonSerializer<Object>` | BeanPropertyWriter.`_findAndAddDynamic(PropertySerializerMap map, Class<?> type, SerializerProvider provider)`
    `void` | AnyGetterWriter.`getAndSerialize(Object bean, JsonGenerator jgen, SerializerProvider provider)`
    `JsonNode` | StdSerializers.BooleanSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | StdSerializers.StringSerializer.`getSchema(SerializerProvider provider, Type typeHint)` Deprecated.
    `JsonNode` | StdSerializers.IntegerSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | StdSerializers.IntLikeSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | StdSerializers.LongSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | StdSerializers.FloatSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | StdSerializers.DoubleSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | StdSerializers.NumberSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | StdSerializers.SqlDateSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | StdSerializers.SqlTimeSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `void` | AnyGetterWriter.`resolve(SerializerProvider provider)`
    `void` | StdSerializers.BooleanSerializer.`serialize(Boolean value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | StdSerializers.SqlDateSerializer.`serialize(Date value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | StdSerializers.DoubleSerializer.`serialize(Double value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | StdSerializers.FloatSerializer.`serialize(Float value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | StdSerializers.IntegerSerializer.`serialize(Integer value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | StdSerializers.LongSerializer.`serialize(Long value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | StdSerializers.IntLikeSerializer.`serialize(Number value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | StdSerializers.NumberSerializer.`serialize(Number value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | BeanSerializer.`serialize(Object bean, JsonGenerator jgen, SerializerProvider provider)` Main serialization method that will delegate actual output to configured `BeanPropertyWriter` instances.
    `void` | StdSerializers.StringSerializer.`serialize(String value, JsonGenerator jgen, SerializerProvider provider)` Deprecated.
    `void` | StdSerializers.SqlTimeSerializer.`serialize(Time value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | BeanPropertyWriter.`serializeAsField(Object bean, JsonGenerator jgen, SerializerProvider prov)` Method called to access property that this bean stands for, from within given bean, and to serialize it as a JSON Object field using appropriate serializer.
    `void` | BeanPropertyFilter.`serializeAsField(Object bean, JsonGenerator jgen, SerializerProvider prov, BeanPropertyWriter writer)` Method called by `BeanSerializer` to let filter decide what to do with given bean property value: the usual choices are to either filter out (i.e.

  - ### Uses of SerializerProvider in org.codehaus.jackson.map.ser.impl

    Methods in org.codehaus.jackson.map.ser.impl with parameters of type SerializerProvider
    Modifier and Type | Method and Description
    --- | ---
    `protected JsonSerializer<Object>` | UnwrappingBeanPropertyWriter.`_findAndAddDynamic(PropertySerializerMap map, Class<?> type, SerializerProvider provider)`
    `void` | SerializerCache.`addAndResolveNonTypedSerializer(Class<?> type, JsonSerializer<Object> ser, SerializerProvider provider)`
    `void` | SerializerCache.`addAndResolveNonTypedSerializer(JavaType type, JsonSerializer<Object> ser, SerializerProvider provider)`
    `PropertySerializerMap.SerializerAndMapResult` | PropertySerializerMap.`findAndAddSerializer(Class<?> type, SerializerProvider provider, BeanProperty property)` Method called if initial lookup fails; will both find serializer and construct new map instance if warranted, and return both
    `PropertySerializerMap.SerializerAndMapResult` | PropertySerializerMap.`findAndAddSerializer(JavaType type, SerializerProvider provider, BeanProperty property)`
    `JsonNode` | UnknownSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | FailingSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `void` | UnwrappingBeanSerializer.`serialize(Object bean, JsonGenerator jgen, SerializerProvider provider)` Main serialization method that will delegate actual output to configured `BeanPropertyWriter` instances.
    `void` | UnknownSerializer.`serialize(Object value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | FailingSerializer.`serialize(Object value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | UnwrappingBeanPropertyWriter.`serializeAsField(Object bean, JsonGenerator jgen, SerializerProvider prov)`
    `void` | SimpleBeanPropertyFilter.FilterExceptFilter.`serializeAsField(Object bean, JsonGenerator jgen, SerializerProvider provider, BeanPropertyWriter writer)`
    `void` | SimpleBeanPropertyFilter.SerializeExceptFilter.`serializeAsField(Object bean, JsonGenerator jgen, SerializerProvider provider, BeanPropertyWriter writer)`
    `void` | UnknownSerializer.`serializeWithType(Object value, JsonGenerator jgen, SerializerProvider provider, TypeSerializer typeSer)`

  - ### Uses of SerializerProvider in org.codehaus.jackson.map.ser.std

    Methods in org.codehaus.jackson.map.ser.std with parameters of type SerializerProvider
    Modifier and Type | Method and Description
    --- | ---
    `protected JsonSerializer<Object>` | ObjectArraySerializer.`_findAndAddDynamic(PropertySerializerMap map, Class<?> type, SerializerProvider provider)`
    `protected JsonSerializer<Object>` | MapSerializer.`_findAndAddDynamic(PropertySerializerMap map, Class<?> type, SerializerProvider provider)`
    `protected JsonSerializer<Object>` | AsArraySerializerBase.`_findAndAddDynamic(PropertySerializerMap map, Class<?> type, SerializerProvider provider)`
    `protected JsonSerializer<Object>` | ObjectArraySerializer.`_findAndAddDynamic(PropertySerializerMap map, JavaType type, SerializerProvider provider)`
    `protected JsonSerializer<Object>` | MapSerializer.`_findAndAddDynamic(PropertySerializerMap map, JavaType type, SerializerProvider provider)`
    `protected JsonSerializer<Object>` | AsArraySerializerBase.`_findAndAddDynamic(PropertySerializerMap map, JavaType type, SerializerProvider provider)`
    `protected BeanPropertyFilter` | BeanSerializerBase.`findFilter(SerializerProvider provider)` Helper method used to locate filter that is needed, based on filter id this serializer was constructed with.
    `JsonNode` | ToStringSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | TokenBufferSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | StringSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | StdKeySerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | StdJdkSerializers.AtomicBooleanSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | StdJdkSerializers.AtomicIntegerSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | StdJdkSerializers.AtomicLongSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | StdJdkSerializers.AtomicReferenceSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | StdJdkSerializers.FileSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | StdJdkSerializers.ClassSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | StdArraySerializers.StringArraySerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | StdArraySerializers.BooleanArraySerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | StdArraySerializers.ByteArraySerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | StdArraySerializers.ShortArraySerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | StdArraySerializers.CharArraySerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | StdArraySerializers.IntArraySerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | StdArraySerializers.LongArraySerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | StdArraySerializers.FloatArraySerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | StdArraySerializers.DoubleArraySerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | StaticListSerializerBase.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | SerializerBase.`getSchema(SerializerProvider provider, Type typeHint)` Note: since Jackson 1.9, default implementation claims type is "string"
    `JsonNode` | SerializableWithTypeSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | SerializableSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | ScalarSerializerBase.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | RawSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | ObjectArraySerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | NullSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | MapSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | JsonValueSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | EnumSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | EnumMapSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | DateSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | CalendarSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | BeanSerializerBase.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | AsArraySerializerBase.`getSchema(SerializerProvider provider, Type typeHint)`
    `void` | StringCollectionSerializer.`resolve(SerializerProvider provider)`
    `void` | StdArraySerializers.StringArraySerializer.`resolve(SerializerProvider provider)` Need to get callback to resolve value serializer, which may be overridden by custom serializer
    `void` | ObjectArraySerializer.`resolve(SerializerProvider provider)` Need to get callback to resolve value serializer, if static typing is used (either being forced, or because value type is final)
    `void` | MapSerializer.`resolve(SerializerProvider provider)` Need to get callback to resolve value serializer, if static typing is used (either being forced, or because value type is final)
    `void` | JsonValueSerializer.`resolve(SerializerProvider provider)` We can try to find the actual serializer for value, if we can statically figure out what the result type must be.
    `void` | IndexedStringListSerializer.`resolve(SerializerProvider provider)`
    `void` | EnumMapSerializer.`resolve(SerializerProvider provider)`
    `void` | BeanSerializerBase.`resolve(SerializerProvider provider)`
    `void` | AsArraySerializerBase.`resolve(SerializerProvider provider)` Need to get callback to resolve value serializer, if static typing is used (either being forced, or because value type is final)
    `void` | StdJdkSerializers.AtomicBooleanSerializer.`serialize(AtomicBoolean value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | StdJdkSerializers.AtomicIntegerSerializer.`serialize(AtomicInteger value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | StdJdkSerializers.AtomicLongSerializer.`serialize(AtomicLong value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | StdJdkSerializers.AtomicReferenceSerializer.`serialize(AtomicReference<?> value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | StdArraySerializers.ByteArraySerializer.`serialize(byte[] value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | StdKeySerializers.CalendarKeySerializer.`serialize(Calendar value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | CalendarSerializer.`serialize(Calendar value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | StdArraySerializers.CharArraySerializer.`serialize(char[] value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | StdJdkSerializers.ClassSerializer.`serialize(Class<?> value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | StringCollectionSerializer.`serialize(Collection<String> value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | StdKeySerializers.DateKeySerializer.`serialize(Date value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | DateSerializer.`serialize(Date value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | EnumSerializer.`serialize(Enum<?> en, JsonGenerator jgen, SerializerProvider provider)`
    `void` | EnumMapSerializer.`serialize(EnumMap<? extends Enum<?>,?> value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | StdJdkSerializers.FileSerializer.`serialize(File value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | InetAddressSerializer.`serialize(InetAddress value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | SerializableSerializer.`serialize(JsonSerializable value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | SerializableWithTypeSerializer.`serialize(JsonSerializableWithType value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | IndexedStringListSerializer.`serialize(List<String> value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | MapSerializer.`serialize(Map<?,?> value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | ToStringSerializer.`serialize(Object value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | StdKeySerializer.`serialize(Object value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | NullSerializer.`serialize(Object value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | JsonValueSerializer.`serialize(Object bean, JsonGenerator jgen, SerializerProvider prov)`
    `abstract void` | BeanSerializerBase.`serialize(Object bean, JsonGenerator jgen, SerializerProvider provider)`
    `void` | StringSerializer.`serialize(String value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | StdKeySerializers.StringKeySerializer.`serialize(String value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | TimeZoneSerializer.`serialize(TimeZone value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | StdArraySerializers.ArraySerializerBase.`serialize(T value, JsonGenerator jgen, SerializerProvider provider)`
    `abstract void` | SerializerBase.`serialize(T value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | RawSerializer.`serialize(T value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | AsArraySerializerBase.`serialize(T value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | TokenBufferSerializer.`serialize(TokenBuffer value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | StdArraySerializers.BooleanArraySerializer.`serializeContents(boolean[] value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | CollectionSerializer.`serializeContents(Collection<?> value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | StdArraySerializers.DoubleArraySerializer.`serializeContents(double[] value, JsonGenerator jgen, SerializerProvider provider)`
    `protected void` | EnumMapSerializer.`serializeContents(EnumMap<? extends Enum<?>,?> value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | EnumSetSerializer.`serializeContents(EnumSet<? extends Enum<?>> value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | StdArraySerializers.FloatArraySerializer.`serializeContents(float[] value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | StdArraySerializers.IntArraySerializer.`serializeContents(int[] value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | IterableSerializer.`serializeContents(Iterable<?> value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | StdContainerSerializers.IteratorSerializer.`serializeContents(Iterator<?> value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | StdContainerSerializers.IndexedListSerializer.`serializeContents(List<?> value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | StdArraySerializers.LongArraySerializer.`serializeContents(long[] value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | ObjectArraySerializer.`serializeContents(Object[] value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | StdArraySerializers.ShortArraySerializer.`serializeContents(short[] value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | StdArraySerializers.StringArraySerializer.`serializeContents(String[] value, JsonGenerator jgen, SerializerProvider provider)`
    `protected abstract void` | StdArraySerializers.ArraySerializerBase.`serializeContents(T value, JsonGenerator jgen, SerializerProvider provider)`
    `protected abstract void` | AsArraySerializerBase.`serializeContents(T value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | CollectionSerializer.`serializeContentsUsing(Collection<?> value, JsonGenerator jgen, SerializerProvider provider, JsonSerializer<Object> ser)`
    `protected void` | EnumMapSerializer.`serializeContentsUsing(EnumMap<? extends Enum<?>,?> value, JsonGenerator jgen, SerializerProvider provider, JsonSerializer<Object> valueSer)`
    `void` | StdContainerSerializers.IndexedListSerializer.`serializeContentsUsing(List<?> value, JsonGenerator jgen, SerializerProvider provider, JsonSerializer<Object> ser)`
    `void` | ObjectArraySerializer.`serializeContentsUsing(Object[] value, JsonGenerator jgen, SerializerProvider provider, JsonSerializer<Object> ser)`
    `void` | MapSerializer.`serializeFields(Map<?,?> value, JsonGenerator jgen, SerializerProvider provider)` Method called to serialize fields, when the value type is not statically known.
    `protected void` | BeanSerializerBase.`serializeFields(Object bean, JsonGenerator jgen, SerializerProvider provider)`
    `protected void` | BeanSerializerBase.`serializeFieldsFiltered(Object bean, JsonGenerator jgen, SerializerProvider provider)` Alternative serialization method that gets called when there is a `BeanPropertyFilter` that needs to be called to determine which properties are to be serialized (and possibly how)
    `protected void` | MapSerializer.`serializeFieldsUsing(Map<?,?> value, JsonGenerator jgen, SerializerProvider provider, JsonSerializer<Object> ser)` Method called to serialize fields, when the value type is statically known, so that value serializer is passed and does not need to be fetched from provider.
    `void` | StdContainerSerializers.IndexedListSerializer.`serializeTypedContents(List<?> value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | ObjectArraySerializer.`serializeTypedContents(Object[] value, JsonGenerator jgen, SerializerProvider provider)`
    `protected void` | MapSerializer.`serializeTypedFields(Map<?,?> value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | StdArraySerializers.ByteArraySerializer.`serializeWithType(byte[] value, JsonGenerator jgen, SerializerProvider provider, TypeSerializer typeSer)`
    `void` | StdArraySerializers.CharArraySerializer.`serializeWithType(char[] value, JsonGenerator jgen, SerializerProvider provider, TypeSerializer typeSer)`
    `void` | StringCollectionSerializer.`serializeWithType(Collection<String> value, JsonGenerator jgen, SerializerProvider provider, TypeSerializer typeSer)`
    `void` | EnumMapSerializer.`serializeWithType(EnumMap<? extends Enum<?>,?> value, JsonGenerator jgen, SerializerProvider provider, TypeSerializer typeSer)`
    `void` | InetAddressSerializer.`serializeWithType(InetAddress value, JsonGenerator jgen, SerializerProvider provider, TypeSerializer typeSer)`
    `void` | SerializableSerializer.`serializeWithType(JsonSerializable value, JsonGenerator jgen, SerializerProvider provider, TypeSerializer typeSer)`
    `void` | SerializableWithTypeSerializer.`serializeWithType(JsonSerializableWithType value, JsonGenerator jgen, SerializerProvider provider, TypeSerializer typeSer)`
    `void` | IndexedStringListSerializer.`serializeWithType(List<String> value, JsonGenerator jgen, SerializerProvider provider, TypeSerializer typeSer)`
    `void` | MapSerializer.`serializeWithType(Map<?,?> value, JsonGenerator jgen, SerializerProvider provider, TypeSerializer typeSer)`
    `void` | ToStringSerializer.`serializeWithType(Object value, JsonGenerator jgen, SerializerProvider provider, TypeSerializer typeSer)` Default implementation will write type prefix, call regular serialization method (since assumption is that value itself does not need JSON Array or Object start/end markers), and then write type suffix.
    `void` | JsonValueSerializer.`serializeWithType(Object bean, JsonGenerator jgen, SerializerProvider provider, TypeSerializer typeSer)`
    `void` | BeanSerializerBase.`serializeWithType(Object bean, JsonGenerator jgen, SerializerProvider provider, TypeSerializer typeSer)`
    `void` | TimeZoneSerializer.`serializeWithType(TimeZone value, JsonGenerator jgen, SerializerProvider provider, TypeSerializer typeSer)`
    `void` | StdArraySerializers.ArraySerializerBase.`serializeWithType(T value, JsonGenerator jgen, SerializerProvider provider, TypeSerializer typeSer)`
    `void` | ScalarSerializerBase.`serializeWithType(T value, JsonGenerator jgen, SerializerProvider provider, TypeSerializer typeSer)` Default implementation will write type prefix, call regular serialization method (since assumption is that value itself does not need JSON Array or Object start/end markers), and then write type suffix.
    `void` | RawSerializer.`serializeWithType(T value, JsonGenerator jgen, SerializerProvider provider, TypeSerializer typeSer)`
    `void` | NonTypedScalarSerializerBase.`serializeWithType(T value, JsonGenerator jgen, SerializerProvider provider, TypeSerializer typeSer)`
    `void` | AsArraySerializerBase.`serializeWithType(T value, JsonGenerator jgen, SerializerProvider provider, TypeSerializer typeSer)`
    `void` | TokenBufferSerializer.`serializeWithType(TokenBuffer value, JsonGenerator jgen, SerializerProvider provider, TypeSerializer typeSer)` Implementing typed output for contents of a TokenBuffer is very tricky, since we do not know for sure what its contents might look like (or, rather, we do know when serializing, but not necessarily when deserializing!) One possibility would be to check the current token, and use that to determine if we would output JSON Array, Object or scalar value.
    `void` | SerializerBase.`wrapAndThrow(SerializerProvider provider, Throwable t, Object bean, int index)`
    `void` | SerializerBase.`wrapAndThrow(SerializerProvider provider, Throwable t, Object bean, String fieldName)` Method that will modify caught exception (passed in as argument) as necessary to include reference information, and to ensure it is a subtype of `IOException`, or an unchecked exception.

  - ### Uses of SerializerProvider in org.codehaus.jackson.map.type

    Methods in org.codehaus.jackson.map.type with parameters of type SerializerProvider
    Modifier and Type | Method and Description
    --- | ---
    `void` | TypeBase.`serialize(JsonGenerator jgen, SerializerProvider provider)`
    `void` | TypeBase.`serializeWithType(JsonGenerator jgen, SerializerProvider provider, TypeSerializer typeSer)`

  - ### Uses of SerializerProvider in org.codehaus.jackson.map.util

    Methods in org.codehaus.jackson.map.util with parameters of type SerializerProvider
    Modifier and Type | Method and Description
    --- | ---
    `void` | JSONWrappedObject.`serialize(JsonGenerator jgen, SerializerProvider provider)`
    `void` | JSONPObject.`serialize(JsonGenerator jgen, SerializerProvider provider)`
    `void` | JSONWrappedObject.`serializeWithType(JsonGenerator jgen, SerializerProvider provider, TypeSerializer typeSer)`
    `void` | JSONPObject.`serializeWithType(JsonGenerator jgen, SerializerProvider provider, TypeSerializer typeSer)`

  - ### Uses of SerializerProvider in org.codehaus.jackson.node

    Methods in org.codehaus.jackson.node with parameters of type SerializerProvider
    Modifier and Type | Method and Description
    --- | ---
    `void` | TextNode.`serialize(JsonGenerator jg, SerializerProvider provider)`
    `void` | POJONode.`serialize(JsonGenerator jg, SerializerProvider provider)`
    `void` | ObjectNode.`serialize(JsonGenerator jg, SerializerProvider provider)` Method that can be called to serialize this node and all of its descendants using specified JSON generator.
    `void` | NullNode.`serialize(JsonGenerator jg, SerializerProvider provider)`
    `void` | MissingNode.`serialize(JsonGenerator jg, SerializerProvider provider)`
    `void` | LongNode.`serialize(JsonGenerator jg, SerializerProvider provider)`
    `void` | IntNode.`serialize(JsonGenerator jg, SerializerProvider provider)`
    `void` | DoubleNode.`serialize(JsonGenerator jg, SerializerProvider provider)`
    `void` | DecimalNode.`serialize(JsonGenerator jg, SerializerProvider provider)`
    `void` | BooleanNode.`serialize(JsonGenerator jg, SerializerProvider provider)`
    `void` | BinaryNode.`serialize(JsonGenerator jg, SerializerProvider provider)`
    `void` | BigIntegerNode.`serialize(JsonGenerator jg, SerializerProvider provider)`
    `abstract void` | BaseJsonNode.`serialize(JsonGenerator jgen, SerializerProvider provider)` Method called to serialize node instances using given generator.
    `void` | ArrayNode.`serialize(JsonGenerator jg, SerializerProvider provider)`
    `void` | ValueNode.`serializeWithType(JsonGenerator jg, SerializerProvider provider, TypeSerializer typeSer)`
    `void` | ObjectNode.`serializeWithType(JsonGenerator jg, SerializerProvider provider, TypeSerializer typeSer)`
    `void` | MissingNode.`serializeWithType(JsonGenerator jg, SerializerProvider provider, TypeSerializer typeSer)`
    `abstract void` | BaseJsonNode.`serializeWithType(JsonGenerator jgen, SerializerProvider provider, TypeSerializer typeSer)` Type information is needed, even if JsonNode instances are "plain" JSON, since they may be mixed with other types.
    `void` | ArrayNode.`serializeWithType(JsonGenerator jg, SerializerProvider provider, TypeSerializer typeSer)`

  - ### Uses of SerializerProvider in org.codehaus.jackson.schema

    Methods in org.codehaus.jackson.schema with parameters of type SerializerProvider
    Modifier and Type | Method and Description
    --- | ---
    `JsonNode` | SchemaAware.`getSchema(SerializerProvider provider, Type typeHint)` Get the representation of the schema to which this serializer will conform.

  - ### Uses of SerializerProvider in org.codehaus.jackson.xc

    Methods in org.codehaus.jackson.xc with parameters of type SerializerProvider
    Modifier and Type | Method and Description
    --- | ---
    `JsonNode` | XmlAdapterJsonSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | DomElementJsonSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `JsonNode` | DataHandlerJsonSerializer.`getSchema(SerializerProvider provider, Type typeHint)`
    `void` | DataHandlerJsonSerializer.`serialize(DataHandler value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | DomElementJsonSerializer.`serialize(Element value, JsonGenerator jgen, SerializerProvider provider)`
    `void` | XmlAdapterJsonSerializer.`serialize(Object value, JsonGenerator jgen, SerializerProvider provider)`