# Package com.fasterxml.jackson.databind.ser

Contains implementation classes of serialization part of data binding.

See: Description

- Interface Summary
  Interface | Description
  --- | ---
  BeanPropertyFilter | Deprecated Since 2.3: use `PropertyFilter` instead.
  ContextualSerializer | Add-on interface that `JsonSerializer`s can implement to get a callback that can be used to create contextual instances of serializer to use for handling properties of supported type.
  PropertyFilter | Interface that defines API for filter objects use (as configured using `JsonFilter`) for filtering bean properties to serialize.
  ResolvableSerializer | Interface used to indicate serializers that want to do post-processing after construction and being added to `SerializerProvider`, but before being used.
  Serializers | Interface that defines API for simple extensions that can provide additional serializers for various types.

- Class Summary
  Class | Description
  --- | ---
  AnyGetterWriter | Class similar to `BeanPropertyWriter`, but that will be used for serializing `JsonAnyGetter` annotated (Map) properties
  BasicSerializerFactory | Factory class that can provide serializers for standard JDK classes, as well as custom classes that extend standard classes or implement one of "well-known" interfaces (such as `Collection`).
  BeanPropertyWriter | Base bean property handler class, which implements common parts of reflection-based functionality for accessing a property value and serializing it.
  BeanSerializer | Serializer class that can serialize Java objects that map to JSON Object output.
  BeanSerializerBuilder | Builder class used for aggregating deserialization information about a POJO, in order to build a `JsonSerializer` for serializing intances.
  BeanSerializerFactory | Factory class that can provide serializers for any regular Java beans (as defined by "having at least one get method recognizable as bean accessor" -- where `Object.getClass()` does not count); as well as for "standard" JDK types.
  BeanSerializerModifier | Abstract class that defines API for objects that can be registered (for `BeanSerializerFactory` to participate in constructing `BeanSerializer` instances.
  ContainerSerializer<T> | Intermediate base class for serializers used for serializing types that contain element(s) of other types, such as arrays, `Collection`s (`Lists`, `Sets` etc) and `Map`s and iterable things (`Iterator`s).
  DefaultSerializerProvider | Standard implementation used by `ObjectMapper`: adds methods only exposed to `ObjectMapper`, as well as constructors.
  DefaultSerializerProvider.Impl | Concrete implementation that defines factory method(s), defined as final.
  FilterProvider | Interface for objects that providers instances of `PropertyFilter` that match given ids.
  PropertyBuilder | Helper class for `BeanSerializerFactory` that is used to construct `BeanPropertyWriter` instances.
  PropertyWriter | Base class for writers used to output property values (name-value pairs) as key/value pairs via streaming API.
  SerializerCache | Simple cache object that allows for doing 2-level lookups: first level is by "local" read-only lookup Map (used without locking) and second backup level is by a shared modifiable HashMap.
  SerializerFactory | Abstract class that defines API used by `SerializerProvider` to obtain actual `JsonSerializer` instances from multiple distinct factories.
  Serializers.Base | Basic `Serializers` implementation that implements all methods but provides no serializers.
  VirtualBeanPropertyWriter | `BeanPropertyWriter` implementation used with `JsonAppend` to add "virtual" properties in addition to regular ones.

## Package com.fasterxml.jackson.databind.ser Description

Contains implementation classes of serialization part of data binding.