## Uses of Interface
org.codehaus.jackson.schema.SchemaAware

- Packages that use SchemaAware
  Package | Description
  --- | ---
  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.xc | Package that contains XML Compatibility functionality for Jackson, such as handlers for JAXB annotations

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

    Classes in org.codehaus.jackson.map.ext that implement SchemaAware
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `CoreXMLSerializers.XMLGregorianCalendarSerializer`
    `class` | `DOMSerializer`
    `static class` | `JodaSerializers.DateMidnightSerializer`
    `static class` | `JodaSerializers.DateTimeSerializer`
    `protected static class` | `JodaSerializers.JodaSerializer<T>`
    `static class` | `JodaSerializers.LocalDateSerializer`
    `static class` | `JodaSerializers.LocalDateTimeSerializer`

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

    Classes in org.codehaus.jackson.map.ser that implement SchemaAware
    Modifier and Type | Class and Description
    --- | ---
    `class` | `BeanSerializer` Serializer class that can serialize arbitrary bean objects
    `static class` | `StdSerializers.BooleanSerializer` Serializer used for primitive boolean, as well as java.util.Boolean wrapper type.
    `static class` | `StdSerializers.CalendarSerializer` Deprecated. Since 1.9, use `DateSerializer` instead
    `static class` | `StdSerializers.DoubleSerializer` This is the special serializer for regular `Double`s (and primitive doubles)
    `static class` | `StdSerializers.FloatSerializer`
    `static class` | `StdSerializers.IntegerSerializer` This is the special serializer for regular `Integer`s (and primitive ints)
    `static class` | `StdSerializers.IntLikeSerializer` Similar to `StdSerializers.IntegerSerializer`, but will not cast to Integer: instead, cast is to `Number`, and conversion is by calling `Number.intValue()`.
    `static class` | `StdSerializers.LongSerializer`
    `static class` | `StdSerializers.NumberSerializer` As a fallback, we may need to use this serializer for other types of `Number`s (custom types).
    `static class` | `StdSerializers.SerializableSerializer` Deprecated. Since 1.9, use `DateSerializer` instead
    `static class` | `StdSerializers.SerializableWithTypeSerializer` Deprecated. Since 1.9, use `DateSerializer` instead
    `static class` | `StdSerializers.SqlDateSerializer` Compared to regular `StdSerializers.UtilDateSerializer`, we do use String representation here.
    `static class` | `StdSerializers.SqlTimeSerializer`
    `static class` | `StdSerializers.StringSerializer` Deprecated. Since 1.9, use `StringSerializer` instead
    `static class` | `StdSerializers.UtilDateSerializer` Deprecated. Since 1.9, use `DateSerializer` instead

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

    Classes in org.codehaus.jackson.map.ser.impl that implement SchemaAware
    Modifier and Type | Class and Description
    --- | ---
    `class` | `FailingSerializer` Special bogus "serializer" that will throw `JsonGenerationException` if its `FailingSerializer.serialize(java.lang.Object, org.codehaus.jackson.JsonGenerator, org.codehaus.jackson.map.SerializerProvider)` gets invoked.
    `class` | `UnknownSerializer`
    `class` | `UnwrappingBeanSerializer`

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

    Classes in org.codehaus.jackson.map.ser.std that implement SchemaAware
    Modifier and Type | Class and Description
    --- | ---
    `class` | `AsArraySerializerBase<T>` Base class for serializers that will output contents as JSON arrays; typically serializers used for `Collection` and array types.
    `class` | `BeanSerializerBase` Base class both for the standard bean serializer, and couple of variants that only differ in small details.
    `class` | `CalendarSerializer` Standard serializer for `Calendar`.
    `class` | `CollectionSerializer` Fallback serializer for cases where Collection is not known to be of type for which more specializer serializer exists (such as index-accessible List).
    `class` | `ContainerSerializerBase<T>` Intermediate base class for types that contain element(s) of other types.
    `class` | `DateSerializer` For efficiency, we will serialize Dates as longs, instead of potentially more readable Strings.
    `class` | `EnumMapSerializer` Specialized serializer for `EnumMap`s.
    `class` | `EnumSerializer` Standard serializer used for `Enum` types.
    `class` | `EnumSetSerializer`
    `class` | `IndexedStringListSerializer` Efficient implementation for serializing `List`s that contains Strings and are random-accessible.
    `class` | `InetAddressSerializer` Simple serializer for `InetAddress`.
    `class` | `IterableSerializer`
    `class` | `JsonValueSerializer` Serializer class that can serialize Object that have a `JsonValue` annotation to indicate that serialization should be done by calling the method annotated, and serializing result it returns.
    `class` | `MapSerializer` Standard serializer implementation for serializing {link java.util.Map} types.
    `class` | `NonTypedScalarSerializerBase<T>` Intermediate base class for limited number of scalar types that should never include type information.
    `class` | `NullSerializer` This is a simple dummy serializer that will just output literal JSON null value whenever serialization is requested.
    `class` | `ObjectArraySerializer` Generic serializer for Object arrays (`Object[]`).
    `class` | `RawSerializer<T>` This is a simple dummy serializer that will just output raw values by calling toString() on value to serialize.
    `class` | `ScalarSerializerBase<T>`
    `class` | `SerializableSerializer` Generic handler for types that implement `JsonSerializable`.
    `class` | `SerializableWithTypeSerializer` Generic handler for types that implement `JsonSerializableWithType`.
    `class` | `SerializerBase<T>` Base class used by all standard serializers.
    `class` | `StaticListSerializerBase<T extends Collection<?>>` Intermediate base class for Lists, Collections and Arrays that contain static (non-dynamic) value types.
    `static class` | `StdArraySerializers.ArraySerializerBase<T>` Base class for serializers that will output contents as JSON arrays.
    `static class` | `StdArraySerializers.BooleanArraySerializer`
    `static class` | `StdArraySerializers.ByteArraySerializer` Unlike other integral number array serializers, we do not just print out byte values as numbers.
    `static class` | `StdArraySerializers.CharArraySerializer` Character arrays are different from other integral number arrays in that they are most likely to be textual data, and should be written as Strings, not arrays of entries.
    `static class` | `StdArraySerializers.DoubleArraySerializer`
    `static class` | `StdArraySerializers.FloatArraySerializer`
    `static class` | `StdArraySerializers.IntArraySerializer`
    `static class` | `StdArraySerializers.LongArraySerializer`
    `static class` | `StdArraySerializers.ShortArraySerializer`
    `static class` | `StdArraySerializers.StringArraySerializer` Standard serializer used for `String[]` values.
    `static class` | `StdContainerSerializers.IndexedListSerializer` This is an optimized serializer for Lists that can be efficiently traversed by index (as opposed to others, such as `LinkedList` that can not}.
    `static class` | `StdContainerSerializers.IteratorSerializer`
    `static class` | `StdJdkSerializers.AtomicBooleanSerializer`
    `static class` | `StdJdkSerializers.AtomicIntegerSerializer`
    `static class` | `StdJdkSerializers.AtomicLongSerializer`
    `static class` | `StdJdkSerializers.AtomicReferenceSerializer`
    `static class` | `StdJdkSerializers.ClassSerializer` Also: default bean access will not do much good with Class.class.
    `static class` | `StdJdkSerializers.FileSerializer` For now, File objects get serialized by just outputting absolute (but not canonical) name as String value
    `class` | `StdKeySerializer` Specialized serializer that can be used as the generic key serializer, when serializing `Map`s to JSON Objects.
    `static class` | `StdKeySerializers.CalendarKeySerializer`
    `static class` | `StdKeySerializers.DateKeySerializer`
    `static class` | `StdKeySerializers.StringKeySerializer`
    `class` | `StringCollectionSerializer` Efficient implement for serializing `Collection`s that contain Strings.
    `class` | `StringSerializer` This is the special serializer for regular `String`s.
    `class` | `TimeZoneSerializer`
    `class` | `TokenBufferSerializer` We also want to directly support serialization of `TokenBuffer`; and since it is part of core package, it can not implement `JsonSerializable` (which is only included in the mapper package)
    `class` | `ToStringSerializer` Simple general purpose serializer, useful for any type for which `Object.toString()` returns the desired JSON value.

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

    Classes in org.codehaus.jackson.xc that implement SchemaAware
    Modifier and Type | Class and Description
    --- | ---
    `class` | `DataHandlerJsonSerializer`
    `class` | `DomElementJsonSerializer`
    `class` | `XmlAdapterJsonSerializer`