# Deprecated API

## Contents

- Deprecated Classes
- Deprecated Methods
- Deprecated Constructors
- Deprecated Annotation Type Elements

Deprecated Classes
Class and Description
com.fasterxml.jackson.databind.AnnotationIntrospector.Pair Starting with 2.1, use `AnnotationIntrospectorPair` instead.

Deprecated Methods
Method and Description
com.fasterxml.jackson.databind.deser.BeanDeserializerBuilder.addCreatorProperty(BeanPropertyDefinition) since 2.1, override `BeanDeserializerBuilder.addCreatorProperty(SettableBeanProperty)` instead.
com.fasterxml.jackson.databind.ser.BasicSerializerFactory.buildCollectionSerializer(SerializationConfig, CollectionType, BeanDescription, BeanProperty, boolean, TypeSerializer, JsonSerializer Since 2.1
com.fasterxml.jackson.databind.ser.BasicSerializerFactory.buildContainerSerializer(SerializerProvider, JavaType, BeanDescription, BeanProperty, boolean) Since 2.1 (removed 'property' argument)
com.fasterxml.jackson.databind.jsontype.impl.StdSubtypeResolver.collectAndResolveSubtypes(AnnotatedMember, MapperConfig<?>, AnnotationIntrospector) Since 2.1
com.fasterxml.jackson.databind.jsontype.SubtypeResolver.collectAndResolveSubtypes(AnnotatedMember, MapperConfig<?>, AnnotationIntrospector) Since 2.1: use variant that takes in property type.
com.fasterxml.jackson.databind.ser.std.StdContainerSerializers.collectionSerializer(JavaType, boolean, TypeSerializer, BeanProperty, JsonSerializer Since 2.1; use variant that does not take 'property' argument
com.fasterxml.jackson.databind.ser.std.EnumSerializer.construct(Class<Enum<?>>, SerializationConfig, BeanDescription) Since 2.1 use the variant that takes in `format` argument.
com.fasterxml.jackson.databind.ser.BeanSerializerFactory.constructBeanSerializer(SerializerProvider, BeanDescription, BeanProperty) Since 2.1, do not pass 'property' argument
com.fasterxml.jackson.databind.ser.SerializerFactory.createSerializer(SerializerProvider, JavaType, BeanProperty) Since 2.1: need to use the new variant without 'property' argument (since one won't be passed)
com.fasterxml.jackson.databind.ser.BeanSerializerFactory.findBeanSerializer(SerializerProvider, JavaType, BeanDescription, BeanProperty) Since 2.1 (use variant without 'property' argument).
com.fasterxml.jackson.databind.AnnotationIntrospector.findDeserializationName(AnnotatedField) Since 2.1 should use `AnnotationIntrospector.findNameForDeserialization(com.fasterxml.jackson.databind.introspect.Annotated)` instead
com.fasterxml.jackson.databind.introspect.AnnotationIntrospectorPair.findDeserializationName(AnnotatedField)
com.fasterxml.jackson.databind.AnnotationIntrospector.findDeserializationName(AnnotatedMethod) Since 2.1 should use `AnnotationIntrospector.findNameForDeserialization(com.fasterxml.jackson.databind.introspect.Annotated)` instead
com.fasterxml.jackson.databind.introspect.AnnotationIntrospectorPair.findDeserializationName(AnnotatedMethod)
com.fasterxml.jackson.databind.AnnotationIntrospector.findDeserializationName(AnnotatedParameter) Since 2.1 should use `AnnotationIntrospector.findNameForDeserialization(com.fasterxml.jackson.databind.introspect.Annotated)` instead
com.fasterxml.jackson.databind.introspect.AnnotationIntrospectorPair.findDeserializationName(AnnotatedParameter)
com.fasterxml.jackson.databind.AnnotationIntrospector.findFormat(AnnotatedMember) Since 2.1, use `AnnotationIntrospector.findFormat(Annotated)` instead.
com.fasterxml.jackson.databind.ser.BeanSerializerFactory.findPropertyTypeSerializer(JavaType, SerializationConfig, AnnotatedMember, BeanProperty) Since 2.1
com.fasterxml.jackson.databind.AnnotationIntrospector.findSerializationName(AnnotatedField) Since 2.1 should use `AnnotationIntrospector.findNameForSerialization(com.fasterxml.jackson.databind.introspect.Annotated)` instead
com.fasterxml.jackson.databind.introspect.AnnotationIntrospectorPair.findSerializationName(AnnotatedField)
com.fasterxml.jackson.databind.AnnotationIntrospector.findSerializationName(AnnotatedMethod) Since 2.1 should use `AnnotationIntrospector.findNameForSerialization(com.fasterxml.jackson.databind.introspect.Annotated)` instead
com.fasterxml.jackson.databind.introspect.AnnotationIntrospectorPair.findSerializationName(AnnotatedMethod)
com.fasterxml.jackson.databind.ObjectReader.getJsonFactory() Since 2.1: Use `ObjectReader.getFactory()` instead
com.fasterxml.jackson.databind.ObjectMapper.getJsonFactory() Since 2.1: Use `ObjectMapper.getFactory()` instead
com.fasterxml.jackson.databind.ser.std.StdContainerSerializers.indexedListSerializer(JavaType, boolean, TypeSerializer, BeanProperty, JsonSerializer Since 2.1; use variant that does not take 'property' argument
com.fasterxml.jackson.databind.AnnotationIntrospector.isHandled(Annotation) Not used since 2.0; deprecated sicne 2.1
com.fasterxml.jackson.databind.introspect.JacksonAnnotationIntrospector.isHandled(Annotation)
com.fasterxml.jackson.databind.introspect.AnnotationIntrospectorPair.isHandled(Annotation)
com.fasterxml.jackson.databind.deser.impl.CreatorCollector.setDefaultConstructor(AnnotatedConstructor) since 2.1, use `CreatorCollector.setDefaultCreator(com.fasterxml.jackson.databind.introspect.AnnotatedWithParams)` instead.
com.fasterxml.jackson.databind.ser.BasicSerializerFactory.usesStaticTyping(SerializationConfig, BeanDescription, TypeSerializer, BeanProperty) Since 2.1: use method without 'property'
com.fasterxml.jackson.databind.DeserializationContext.weirdNumberException(Class<?>, String)
com.fasterxml.jackson.databind.DeserializationContext.weirdStringException(Class<?>, String) Since 2.1 should use variant that takes value

Deprecated Constructors
Constructor and Description
com.fasterxml.jackson.databind.AnnotationIntrospector.Pair(AnnotationIntrospector, AnnotationIntrospector)
com.fasterxml.jackson.databind.ser.std.EnumSerializer(EnumValues) Since 2.1
com.fasterxml.jackson.databind.MappingIterator(JavaType, JsonParser, DeserializationContext, JsonDeserializer<?>) Since 2.1, to be removed

Deprecated Annotation Type Elements
Annotation Type Element and Description
com.fasterxml.jackson.databind.annotation.JsonSerialize.include As of Jackson 2.0, this annotation has been replaced by `JsonInclude`
com.fasterxml.jackson.databind.jsonschema.JsonSerializableSchema.schemaItemDefinition (since 2.1) -- support will be dropped in future, since JSON-as-String is fundamentally bad way for customizing anything. No direct replacements offered.
com.fasterxml.jackson.databind.jsonschema.JsonSerializableSchema.schemaObjectPropertiesDefinition (since 2.1) -- support will be dropped in future, since JSON-as-String is fundamentally bad way for customizing anything. No direct replacements offered.