|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.codehaus.jackson.map.DeserializationConfig
public class DeserializationConfig
Object that contains baseline configuration for deserialization
process. An instance is owned by ObjectMapper
, which makes
a copy that is passed during serialization process to
DeserializerProvider
and DeserializerFactory
.
Note: although configuration settings can be changed at any time (for factories and instances), they are not guaranteed to have effect if called after constructing relevant mapper or deserializer instance. This because some objects may be configured, constructed and cached first time they are needed.
Nested Class Summary | |
---|---|
static class |
DeserializationConfig.Feature
Enumeration that defines togglable features that guide the serialization feature. |
Field Summary | |
---|---|
protected AnnotationIntrospector |
_annotationIntrospector
Introspector used for accessing annotation value based configuration. |
protected ClassIntrospector<? extends BeanDescription> |
_classIntrospector
Introspector used to figure out Bean properties needed for bean serialization and deserialization. |
protected DateFormat |
_dateFormat
Custom date format to use for de-serialization. |
protected int |
_featureFlags
Bit set that contains all enabled features |
protected boolean |
_mixInAnnotationsShared
Flag used to detect when a copy if mix-in annotations is needed: set when current copy is shared, cleared when a fresh copy is maed |
protected LinkedNode<DeserializationProblemHandler> |
_problemHandlers
Linked list that contains all registered problem handlers. |
protected TypeResolverBuilder<?> |
_typer
Type information handler used for "untyped" values (ones declared to have type Object.class ) |
protected VisibilityChecker<?> |
_visibilityChecker
Object used for determining whether specific property elements (method, constructors, fields) can be auto-detected based on their visibility (access modifiers). |
protected static DateFormat |
DEFAULT_DATE_FORMAT
|
protected static int |
DEFAULT_FEATURE_FLAGS
Bitfield (set of flags) of all Features that are enabled by default. |
Constructor Summary | |
---|---|
|
DeserializationConfig(ClassIntrospector<? extends BeanDescription> intr,
AnnotationIntrospector annIntr,
VisibilityChecker<?> vc)
|
protected |
DeserializationConfig(DeserializationConfig src,
HashMap<ClassKey,Class<?>> mixins,
TypeResolverBuilder<?> typer,
VisibilityChecker<?> vc)
|
Method Summary | ||
---|---|---|
void |
addHandler(DeserializationProblemHandler h)
Method that can be used to add a handler that can (try to) resolve non-fatal deserialization problems. |
|
void |
addMixInAnnotations(Class<?> target,
Class<?> mixinSource)
Method to use for adding mix-in annotations to use for augmenting specified class or interface. |
|
void |
clearHandlers()
Method for removing all configuring problem handlers; usually done to replace existing handler(s) with different one(s) |
|
DeserializationConfig |
createUnshared(TypeResolverBuilder<?> typer,
VisibilityChecker<?> vc)
Method that is called to create a non-shared copy of the configuration to be used for a deserialization operation. |
|
void |
disable(DeserializationConfig.Feature f)
Method for disabling specified feature. |
|
void |
enable(DeserializationConfig.Feature f)
Method for enabling specified feature. |
|
Class<?> |
findMixInClassFor(Class<?> cls)
Method that will check if there are "mix-in" classes (with mix-in annotations) for given class |
|
void |
fromAnnotations(Class<?> cls)
Method that checks class annotations that the argument Object has, and modifies settings of this configuration object accordingly, similar to how those annotations would affect actual value classes annotated with them, but with global scope. |
|
AnnotationIntrospector |
getAnnotationIntrospector()
Method for getting AnnotationIntrospector configured
to introspect annotation values used for configuration. |
|
Base64Variant |
getBase64Variant()
Method called during deserialization if Base64 encoded content needs to be decoded. |
|
DateFormat |
getDateFormat()
|
|
TypeResolverBuilder<?> |
getDefaultTyper(JavaType baseType)
Method called to locate a type info handler for types that do not have one explicitly declared via annotations (or other configuration). |
|
VisibilityChecker<?> |
getDefaultVisibilityChecker()
Accessor for object used for determining whether specific property elements (method, constructors, fields) can be auto-detected based on their visibility (access modifiers). |
|
LinkedNode<DeserializationProblemHandler> |
getProblemHandlers()
Method for getting head of the problem handler chain. |
|
|
introspect(JavaType type)
Method that will introspect full bean properties for the purpose of building a bean deserializer |
|
|
introspectClassAnnotations(Class<?> cls)
Accessor for getting bean description that only contains class annotations: useful if no getter/setter/creator information is needed. |
|
|
introspectDirectClassAnnotations(Class<?> cls)
Accessor for getting bean description that only contains immediate class annotations: ones from the class, and its direct mix-in, if any, but not from super types. |
|
|
introspectForCreation(Class<?> cls)
Method that will introspect subset of bean properties needed to construct bean instance. |
|
boolean |
isEnabled(DeserializationConfig.Feature f)
Method for checking whether given feature is enabled or not |
|
void |
set(DeserializationConfig.Feature f,
boolean state)
Method for enabling or disabling specified feature. |
|
void |
setAnnotationIntrospector(AnnotationIntrospector introspector)
|
|
void |
setDateFormat(DateFormat df)
Method that will set the textual deserialization to use for deserializing Dates (and Calendars). |
|
void |
setIntrospector(ClassIntrospector<? extends BeanDescription> i)
|
|
void |
setMixInAnnotations(Map<Class<?>,Class<?>> sourceMixins)
Method to use for defining mix-in annotations to use for augmenting annotations that deserializable classes have. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected static final int DEFAULT_FEATURE_FLAGS
protected static final DateFormat DEFAULT_DATE_FORMAT
protected ClassIntrospector<? extends BeanDescription> _classIntrospector
protected AnnotationIntrospector _annotationIntrospector
protected int _featureFlags
protected LinkedNode<DeserializationProblemHandler> _problemHandlers
protected DateFormat _dateFormat
StdDateFormat
.
Note that the configured format object will be cloned once per deserialization process (first time it is needed)
protected boolean _mixInAnnotationsShared
protected final TypeResolverBuilder<?> _typer
Object.class
)
protected VisibilityChecker<?> _visibilityChecker
JsonAutoDetect
annotation)
Constructor Detail |
---|
public DeserializationConfig(ClassIntrospector<? extends BeanDescription> intr, AnnotationIntrospector annIntr, VisibilityChecker<?> vc)
protected DeserializationConfig(DeserializationConfig src, HashMap<ClassKey,Class<?>> mixins, TypeResolverBuilder<?> typer, VisibilityChecker<?> vc)
Method Detail |
---|
public void fromAnnotations(Class<?> cls)
Ones that are known to have effect are:
fromAnnotations
in interface MapperConfig<DeserializationConfig>
cls
- Class of which class annotations to use
for changing configuration settingspublic DeserializationConfig createUnshared(TypeResolverBuilder<?> typer, VisibilityChecker<?> vc)
createUnshared
in interface MapperConfig<DeserializationConfig>
public void setIntrospector(ClassIntrospector<? extends BeanDescription> i)
setIntrospector
in interface MapperConfig<DeserializationConfig>
public AnnotationIntrospector getAnnotationIntrospector()
AnnotationIntrospector
configured
to introspect annotation values used for configuration.
getAnnotationIntrospector
in interface MapperConfig<DeserializationConfig>
public void setAnnotationIntrospector(AnnotationIntrospector introspector)
setAnnotationIntrospector
in interface MapperConfig<DeserializationConfig>
public void setMixInAnnotations(Map<Class<?>,Class<?>> sourceMixins)
Note: a copy of argument Map is created; the original Map is not modified or retained by this config object.
setMixInAnnotations
in interface MapperConfig<DeserializationConfig>
public void addMixInAnnotations(Class<?> target, Class<?> mixinSource)
MapperConfig
mixinSource
are taken to override annotations
that target
(or its supertypes) has.
addMixInAnnotations
in interface MapperConfig<DeserializationConfig>
target
- Class (or interface) whose annotations to effectively overridemixinSource
- Class (or interface) whose annotations are to
be "added" to target's annotations, overriding as necessarypublic Class<?> findMixInClassFor(Class<?> cls)
MapperConfig
findMixInClassFor
in interface ClassIntrospector.MixInResolver
findMixInClassFor
in interface MapperConfig<DeserializationConfig>
public void addHandler(DeserializationProblemHandler h)
public void clearHandlers()
public final boolean isEnabled(DeserializationConfig.Feature f)
public Base64Variant getBase64Variant()
public LinkedNode<DeserializationProblemHandler> getProblemHandlers()
public DateFormat getDateFormat()
public <T extends BeanDescription> T introspect(JavaType type)
type
- Type of class to be introspectedpublic <T extends BeanDescription> T introspectForCreation(Class<?> cls)
public <T extends BeanDescription> T introspectClassAnnotations(Class<?> cls)
public <T extends BeanDescription> T introspectDirectClassAnnotations(Class<?> cls)
public TypeResolverBuilder<?> getDefaultTyper(JavaType baseType)
MapperConfig
getDefaultTyper
in interface MapperConfig<DeserializationConfig>
public VisibilityChecker<?> getDefaultVisibilityChecker()
MapperConfig
JsonAutoDetect
annotation)
getDefaultVisibilityChecker
in interface MapperConfig<DeserializationConfig>
public void enable(DeserializationConfig.Feature f)
public void disable(DeserializationConfig.Feature f)
public void set(DeserializationConfig.Feature f, boolean state)
public void setDateFormat(DateFormat df)
StdDateFormat
.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |