public class JaxbAnnotationIntrospector
extends com.fasterxml.jackson.databind.AnnotationIntrospector
implements com.fasterxml.jackson.core.Versioned
XmlAnyAttribute not yet used (as of 1.5) but may be in future (as an alias for @JsonAnySetter?)
XmlAnyElement not yet used, may be as per [JACKSON-253]
XmlAttachmentRef: JSON does not support external attachments
XmlElementDecl
XmlElementRefs because Jackson doesn't have any support for 'named' collection items -- however,
this may become partially supported as per [JACKSON-253].
XmlInlineBinaryData since the underlying concepts
(like XOP) do not exist in JSON -- Jackson will always use inline base64 encoding as the method
XmlList because JSON does have (or necessarily need)
method of serializing list of values as space-separated Strings
XmlMimeType
XmlMixed since JSON has no concept of mixed content
XmlRegistry
XmlSchema not used, unlikely to be used
XmlSchemaType not used, unlikely to be used
XmlSchemaTypes not used, unlikely to be used
XmlSeeAlso not yet supported, but [ISSUE-1] filed to use it, so may be supported.
XmlValue will have a property named 'value' on its JSON object.
| Modifier and Type | Field and Description |
|---|---|
protected com.fasterxml.jackson.databind.JsonDeserializer<?> |
_dataHandlerDeserializer |
protected com.fasterxml.jackson.databind.JsonSerializer<?> |
_dataHandlerSerializer |
protected boolean |
_ignoreXmlIDREF |
protected String |
_jaxbPackageName |
protected com.fasterxml.jackson.databind.type.TypeFactory |
_typeFactory |
protected static boolean |
DEFAULT_IGNORE_XMLIDREF |
protected static String |
MARKER_FOR_DEFAULT |
| Constructor and Description |
|---|
JaxbAnnotationIntrospector()
Deprecated.
Since 2.1, use the ctor that takes TypeFactory
|
JaxbAnnotationIntrospector(com.fasterxml.jackson.databind.cfg.MapperConfig<?> config) |
JaxbAnnotationIntrospector(com.fasterxml.jackson.databind.type.TypeFactory typeFactory) |
JaxbAnnotationIntrospector(com.fasterxml.jackson.databind.type.TypeFactory typeFactory,
boolean ignoreXmlIDREF) |
| Modifier and Type | Method and Description |
|---|---|
protected com.fasterxml.jackson.databind.util.Converter<Object,Object> |
_converter(XmlAdapter<?,?> adapter,
boolean forSerialization) |
protected Class<?> |
_doFindDeserializationType(com.fasterxml.jackson.databind.introspect.Annotated a,
com.fasterxml.jackson.databind.JavaType baseType) |
protected XmlAdapter<?,?> |
_findContentAdapter(com.fasterxml.jackson.databind.introspect.Annotated ann,
boolean forSerialization) |
protected com.fasterxml.jackson.databind.JavaType |
_fullDeserializationType(com.fasterxml.jackson.databind.introspect.AnnotatedMember am) |
protected com.fasterxml.jackson.databind.JavaType |
_fullSerializationType(com.fasterxml.jackson.databind.introspect.AnnotatedMember am) |
protected String |
_propertyNameToString(com.fasterxml.jackson.databind.PropertyName n) |
protected Class<?> |
_rawDeserializationType(com.fasterxml.jackson.databind.introspect.Annotated a) |
protected Class<?> |
_rawSerializationType(com.fasterxml.jackson.databind.introspect.Annotated a) |
protected com.fasterxml.jackson.databind.jsontype.TypeResolverBuilder<?> |
_typeResolverFromXmlElements(com.fasterxml.jackson.databind.introspect.AnnotatedMember am) |
protected XmlAccessType |
findAccessType(com.fasterxml.jackson.databind.introspect.Annotated ac)
Method for locating JAXB
XmlAccessType annotation value
for given annotated entity, if it has one, or inherits one from
its ancestors (in JAXB sense, package etc). |
com.fasterxml.jackson.databind.introspect.VisibilityChecker<?> |
findAutoDetectVisibility(com.fasterxml.jackson.databind.introspect.AnnotatedClass ac,
com.fasterxml.jackson.databind.introspect.VisibilityChecker<?> checker) |
Object |
findContentDeserializer(com.fasterxml.jackson.databind.introspect.Annotated a) |
Object |
findContentSerializer(com.fasterxml.jackson.databind.introspect.Annotated a) |
Object |
findDeserializationContentConverter(com.fasterxml.jackson.databind.introspect.AnnotatedMember a) |
Class<?> |
findDeserializationContentType(com.fasterxml.jackson.databind.introspect.Annotated a,
com.fasterxml.jackson.databind.JavaType baseContentType) |
Object |
findDeserializationConverter(com.fasterxml.jackson.databind.introspect.Annotated a) |
String |
findDeserializationName(com.fasterxml.jackson.databind.introspect.AnnotatedField af)
Deprecated.
|
String |
findDeserializationName(com.fasterxml.jackson.databind.introspect.AnnotatedMethod am)
Deprecated.
|
Class<?> |
findDeserializationType(com.fasterxml.jackson.databind.introspect.Annotated a,
com.fasterxml.jackson.databind.JavaType baseType)
JAXB does allow specifying (more) concrete class for
deserialization by using \@XmlElement annotation.
|
Object |
findDeserializer(com.fasterxml.jackson.databind.introspect.Annotated am) |
String |
findEnumValue(Enum<?> e)
!!! 12-Oct-2009, tatu: This is hideously slow implementation,
called potentially for every single enum value being
serialized.
|
Boolean |
findIgnoreUnknownProperties(com.fasterxml.jackson.databind.introspect.AnnotatedClass ac) |
Object |
findKeyDeserializer(com.fasterxml.jackson.databind.introspect.Annotated am) |
com.fasterxml.jackson.databind.PropertyName |
findNameForDeserialization(com.fasterxml.jackson.databind.introspect.Annotated a) |
com.fasterxml.jackson.databind.PropertyName |
findNameForSerialization(com.fasterxml.jackson.databind.introspect.Annotated a) |
com.fasterxml.jackson.databind.introspect.ObjectIdInfo |
findObjectIdInfo(com.fasterxml.jackson.databind.introspect.Annotated ann) |
com.fasterxml.jackson.databind.introspect.ObjectIdInfo |
findObjectReferenceInfo(com.fasterxml.jackson.databind.introspect.Annotated ann,
com.fasterxml.jackson.databind.introspect.ObjectIdInfo base) |
com.fasterxml.jackson.databind.jsontype.TypeResolverBuilder<?> |
findPropertyContentTypeResolver(com.fasterxml.jackson.databind.cfg.MapperConfig<?> config,
com.fasterxml.jackson.databind.introspect.AnnotatedMember am,
com.fasterxml.jackson.databind.JavaType containerType) |
com.fasterxml.jackson.databind.jsontype.TypeResolverBuilder<?> |
findPropertyTypeResolver(com.fasterxml.jackson.databind.cfg.MapperConfig<?> config,
com.fasterxml.jackson.databind.introspect.AnnotatedMember am,
com.fasterxml.jackson.databind.JavaType baseType) |
com.fasterxml.jackson.databind.PropertyName |
findRootName(com.fasterxml.jackson.databind.introspect.AnnotatedClass ac) |
Object |
findSerializationContentConverter(com.fasterxml.jackson.databind.introspect.AnnotatedMember a) |
Object |
findSerializationConverter(com.fasterxml.jackson.databind.introspect.Annotated a) |
com.fasterxml.jackson.annotation.JsonInclude.Include |
findSerializationInclusion(com.fasterxml.jackson.databind.introspect.Annotated a,
com.fasterxml.jackson.annotation.JsonInclude.Include defValue)
Implementation of this method is slightly tricky, given that JAXB defaults differ
from Jackson defaults.
|
String |
findSerializationName(com.fasterxml.jackson.databind.introspect.AnnotatedField af)
Deprecated.
|
String |
findSerializationName(com.fasterxml.jackson.databind.introspect.AnnotatedMethod am)
Deprecated.
|
String[] |
findSerializationPropertyOrder(com.fasterxml.jackson.databind.introspect.AnnotatedClass ac) |
Boolean |
findSerializationSortAlphabetically(com.fasterxml.jackson.databind.introspect.AnnotatedClass ac) |
Class<?> |
findSerializationType(com.fasterxml.jackson.databind.introspect.Annotated a) |
com.fasterxml.jackson.databind.JsonSerializer<?> |
findSerializer(com.fasterxml.jackson.databind.introspect.Annotated am) |
List<com.fasterxml.jackson.databind.jsontype.NamedType> |
findSubtypes(com.fasterxml.jackson.databind.introspect.Annotated a) |
String |
findTypeName(com.fasterxml.jackson.databind.introspect.AnnotatedClass ac) |
com.fasterxml.jackson.databind.jsontype.TypeResolverBuilder<?> |
findTypeResolver(com.fasterxml.jackson.databind.cfg.MapperConfig<?> config,
com.fasterxml.jackson.databind.introspect.AnnotatedClass ac,
com.fasterxml.jackson.databind.JavaType baseType) |
com.fasterxml.jackson.databind.PropertyName |
findWrapperName(com.fasterxml.jackson.databind.introspect.Annotated ann) |
protected com.fasterxml.jackson.databind.type.TypeFactory |
getTypeFactory() |
boolean |
hasAnySetterAnnotation(com.fasterxml.jackson.databind.introspect.AnnotatedMethod am) |
boolean |
hasAsValueAnnotation(com.fasterxml.jackson.databind.introspect.AnnotatedMethod am) |
boolean |
hasCreatorAnnotation(com.fasterxml.jackson.databind.introspect.Annotated am) |
boolean |
hasIgnoreMarker(com.fasterxml.jackson.databind.introspect.AnnotatedMember m) |
Boolean |
hasRequiredMarker(com.fasterxml.jackson.databind.introspect.AnnotatedMember m) |
Boolean |
isIgnorableType(com.fasterxml.jackson.databind.introspect.AnnotatedClass ac) |
protected boolean |
isJAXBAnnotation(Annotation ann)
An annotation is handled if it's in the same package as @XmlElement, including subpackages.
|
com.fasterxml.jackson.core.Version |
version()
Method that will return version information stored in and read from jar
that contains this class.
|
allIntrospectors, allIntrospectors, findDeserializationKeyType, findDeserializationName, findFilterId, findFormat, findFormat, findInjectableValueId, findKeySerializer, findNamingStrategy, findPOJOBuilder, findPOJOBuilderConfig, findPropertiesToIgnore, findReferenceType, findSerializationContentType, findSerializationKeyType, findSerializationTyping, findUnwrappingNameTransformer, findValueInstantiator, findViews, hasAnyGetterAnnotation, isAnnotationBundle, isHandled, isTypeId, nopInstance, pairprotected static final boolean DEFAULT_IGNORE_XMLIDREF
protected static final String MARKER_FOR_DEFAULT
protected final String _jaxbPackageName
protected final com.fasterxml.jackson.databind.JsonSerializer<?> _dataHandlerSerializer
protected final com.fasterxml.jackson.databind.JsonDeserializer<?> _dataHandlerDeserializer
protected final com.fasterxml.jackson.databind.type.TypeFactory _typeFactory
protected final boolean _ignoreXmlIDREF
@Deprecated public JaxbAnnotationIntrospector()
public JaxbAnnotationIntrospector(com.fasterxml.jackson.databind.cfg.MapperConfig<?> config)
public JaxbAnnotationIntrospector(com.fasterxml.jackson.databind.type.TypeFactory typeFactory)
public JaxbAnnotationIntrospector(com.fasterxml.jackson.databind.type.TypeFactory typeFactory,
boolean ignoreXmlIDREF)
typeFactory - Type factory used for resolving type informationignoreXmlIDREF - Whether XmlIDREF annotation should be processed
JAXB style (meaning that references are always serialized using id), or
not (first reference as full POJO, others as ids)public com.fasterxml.jackson.core.Version version()
version in interface com.fasterxml.jackson.core.Versionedversion in class com.fasterxml.jackson.databind.AnnotationIntrospectorpublic com.fasterxml.jackson.databind.introspect.ObjectIdInfo findObjectIdInfo(com.fasterxml.jackson.databind.introspect.Annotated ann)
findObjectIdInfo in class com.fasterxml.jackson.databind.AnnotationIntrospectorpublic com.fasterxml.jackson.databind.introspect.ObjectIdInfo findObjectReferenceInfo(com.fasterxml.jackson.databind.introspect.Annotated ann,
com.fasterxml.jackson.databind.introspect.ObjectIdInfo base)
findObjectReferenceInfo in class com.fasterxml.jackson.databind.AnnotationIntrospectorpublic com.fasterxml.jackson.databind.PropertyName findRootName(com.fasterxml.jackson.databind.introspect.AnnotatedClass ac)
findRootName in class com.fasterxml.jackson.databind.AnnotationIntrospectorpublic Boolean findIgnoreUnknownProperties(com.fasterxml.jackson.databind.introspect.AnnotatedClass ac)
findIgnoreUnknownProperties in class com.fasterxml.jackson.databind.AnnotationIntrospectorpublic Boolean isIgnorableType(com.fasterxml.jackson.databind.introspect.AnnotatedClass ac)
isIgnorableType in class com.fasterxml.jackson.databind.AnnotationIntrospectorpublic boolean hasIgnoreMarker(com.fasterxml.jackson.databind.introspect.AnnotatedMember m)
hasIgnoreMarker in class com.fasterxml.jackson.databind.AnnotationIntrospectorpublic com.fasterxml.jackson.databind.PropertyName findWrapperName(com.fasterxml.jackson.databind.introspect.Annotated ann)
findWrapperName in class com.fasterxml.jackson.databind.AnnotationIntrospectorpublic com.fasterxml.jackson.databind.introspect.VisibilityChecker<?> findAutoDetectVisibility(com.fasterxml.jackson.databind.introspect.AnnotatedClass ac,
com.fasterxml.jackson.databind.introspect.VisibilityChecker<?> checker)
findAutoDetectVisibility in class com.fasterxml.jackson.databind.AnnotationIntrospectorprotected XmlAccessType findAccessType(com.fasterxml.jackson.databind.introspect.Annotated ac)
XmlAccessType annotation value
for given annotated entity, if it has one, or inherits one from
its ancestors (in JAXB sense, package etc). Returns null if
nothing has been explicitly defined.public com.fasterxml.jackson.databind.jsontype.TypeResolverBuilder<?> findTypeResolver(com.fasterxml.jackson.databind.cfg.MapperConfig<?> config,
com.fasterxml.jackson.databind.introspect.AnnotatedClass ac,
com.fasterxml.jackson.databind.JavaType baseType)
findTypeResolver in class com.fasterxml.jackson.databind.AnnotationIntrospectorpublic com.fasterxml.jackson.databind.jsontype.TypeResolverBuilder<?> findPropertyTypeResolver(com.fasterxml.jackson.databind.cfg.MapperConfig<?> config,
com.fasterxml.jackson.databind.introspect.AnnotatedMember am,
com.fasterxml.jackson.databind.JavaType baseType)
findPropertyTypeResolver in class com.fasterxml.jackson.databind.AnnotationIntrospectorpublic com.fasterxml.jackson.databind.jsontype.TypeResolverBuilder<?> findPropertyContentTypeResolver(com.fasterxml.jackson.databind.cfg.MapperConfig<?> config,
com.fasterxml.jackson.databind.introspect.AnnotatedMember am,
com.fasterxml.jackson.databind.JavaType containerType)
findPropertyContentTypeResolver in class com.fasterxml.jackson.databind.AnnotationIntrospectorprotected com.fasterxml.jackson.databind.jsontype.TypeResolverBuilder<?> _typeResolverFromXmlElements(com.fasterxml.jackson.databind.introspect.AnnotatedMember am)
public List<com.fasterxml.jackson.databind.jsontype.NamedType> findSubtypes(com.fasterxml.jackson.databind.introspect.Annotated a)
findSubtypes in class com.fasterxml.jackson.databind.AnnotationIntrospectorpublic String findTypeName(com.fasterxml.jackson.databind.introspect.AnnotatedClass ac)
findTypeName in class com.fasterxml.jackson.databind.AnnotationIntrospectorpublic com.fasterxml.jackson.databind.JsonSerializer<?> findSerializer(com.fasterxml.jackson.databind.introspect.Annotated am)
findSerializer in class com.fasterxml.jackson.databind.AnnotationIntrospectorpublic Object findContentSerializer(com.fasterxml.jackson.databind.introspect.Annotated a)
findContentSerializer in class com.fasterxml.jackson.databind.AnnotationIntrospectorpublic Class<?> findSerializationType(com.fasterxml.jackson.databind.introspect.Annotated a)
findSerializationType in class com.fasterxml.jackson.databind.AnnotationIntrospectorpublic com.fasterxml.jackson.annotation.JsonInclude.Include findSerializationInclusion(com.fasterxml.jackson.databind.introspect.Annotated a,
com.fasterxml.jackson.annotation.JsonInclude.Include defValue)
findSerializationInclusion in class com.fasterxml.jackson.databind.AnnotationIntrospectorpublic String[] findSerializationPropertyOrder(com.fasterxml.jackson.databind.introspect.AnnotatedClass ac)
findSerializationPropertyOrder in class com.fasterxml.jackson.databind.AnnotationIntrospectorpublic Boolean findSerializationSortAlphabetically(com.fasterxml.jackson.databind.introspect.AnnotatedClass ac)
findSerializationSortAlphabetically in class com.fasterxml.jackson.databind.AnnotationIntrospectorpublic Object findSerializationConverter(com.fasterxml.jackson.databind.introspect.Annotated a)
findSerializationConverter in class com.fasterxml.jackson.databind.AnnotationIntrospectorpublic Object findSerializationContentConverter(com.fasterxml.jackson.databind.introspect.AnnotatedMember a)
findSerializationContentConverter in class com.fasterxml.jackson.databind.AnnotationIntrospectorpublic com.fasterxml.jackson.databind.PropertyName findNameForSerialization(com.fasterxml.jackson.databind.introspect.Annotated a)
findNameForSerialization in class com.fasterxml.jackson.databind.AnnotationIntrospector@Deprecated public String findSerializationName(com.fasterxml.jackson.databind.introspect.AnnotatedMethod am)
findSerializationName in class com.fasterxml.jackson.databind.AnnotationIntrospector@Deprecated public String findSerializationName(com.fasterxml.jackson.databind.introspect.AnnotatedField af)
findSerializationName in class com.fasterxml.jackson.databind.AnnotationIntrospectorpublic boolean hasAsValueAnnotation(com.fasterxml.jackson.databind.introspect.AnnotatedMethod am)
hasAsValueAnnotation in class com.fasterxml.jackson.databind.AnnotationIntrospectorpublic String findEnumValue(Enum<?> e)
!!! 12-Oct-2009, tatu: This is hideously slow implementation, called potentially for every single enum value being serialized. Should improve...
findEnumValue in class com.fasterxml.jackson.databind.AnnotationIntrospectorpublic Object findDeserializer(com.fasterxml.jackson.databind.introspect.Annotated am)
findDeserializer in class com.fasterxml.jackson.databind.AnnotationIntrospectorpublic Object findKeyDeserializer(com.fasterxml.jackson.databind.introspect.Annotated am)
findKeyDeserializer in class com.fasterxml.jackson.databind.AnnotationIntrospectorpublic Object findContentDeserializer(com.fasterxml.jackson.databind.introspect.Annotated a)
findContentDeserializer in class com.fasterxml.jackson.databind.AnnotationIntrospectorpublic Class<?> findDeserializationType(com.fasterxml.jackson.databind.introspect.Annotated a, com.fasterxml.jackson.databind.JavaType baseType)
findDeserializationType in class com.fasterxml.jackson.databind.AnnotationIntrospectorpublic Class<?> findDeserializationContentType(com.fasterxml.jackson.databind.introspect.Annotated a, com.fasterxml.jackson.databind.JavaType baseContentType)
findDeserializationContentType in class com.fasterxml.jackson.databind.AnnotationIntrospectorprotected Class<?> _doFindDeserializationType(com.fasterxml.jackson.databind.introspect.Annotated a, com.fasterxml.jackson.databind.JavaType baseType)
public com.fasterxml.jackson.databind.PropertyName findNameForDeserialization(com.fasterxml.jackson.databind.introspect.Annotated a)
findNameForDeserialization in class com.fasterxml.jackson.databind.AnnotationIntrospector@Deprecated public String findDeserializationName(com.fasterxml.jackson.databind.introspect.AnnotatedMethod am)
findDeserializationName in class com.fasterxml.jackson.databind.AnnotationIntrospector@Deprecated public String findDeserializationName(com.fasterxml.jackson.databind.introspect.AnnotatedField af)
findDeserializationName in class com.fasterxml.jackson.databind.AnnotationIntrospectorpublic boolean hasAnySetterAnnotation(com.fasterxml.jackson.databind.introspect.AnnotatedMethod am)
hasAnySetterAnnotation in class com.fasterxml.jackson.databind.AnnotationIntrospectorpublic boolean hasCreatorAnnotation(com.fasterxml.jackson.databind.introspect.Annotated am)
hasCreatorAnnotation in class com.fasterxml.jackson.databind.AnnotationIntrospectorpublic Boolean hasRequiredMarker(com.fasterxml.jackson.databind.introspect.AnnotatedMember m)
hasRequiredMarker in class com.fasterxml.jackson.databind.AnnotationIntrospectorpublic Object findDeserializationConverter(com.fasterxml.jackson.databind.introspect.Annotated a)
findDeserializationConverter in class com.fasterxml.jackson.databind.AnnotationIntrospectorpublic Object findDeserializationContentConverter(com.fasterxml.jackson.databind.introspect.AnnotatedMember a)
findDeserializationContentConverter in class com.fasterxml.jackson.databind.AnnotationIntrospectorprotected boolean isJAXBAnnotation(Annotation ann)
ann - The annotation.protected final com.fasterxml.jackson.databind.type.TypeFactory getTypeFactory()
protected XmlAdapter<?,?> _findContentAdapter(com.fasterxml.jackson.databind.introspect.Annotated ann, boolean forSerialization)
protected String _propertyNameToString(com.fasterxml.jackson.databind.PropertyName n)
protected Class<?> _rawDeserializationType(com.fasterxml.jackson.databind.introspect.Annotated a)
protected com.fasterxml.jackson.databind.JavaType _fullDeserializationType(com.fasterxml.jackson.databind.introspect.AnnotatedMember am)
protected Class<?> _rawSerializationType(com.fasterxml.jackson.databind.introspect.Annotated a)
protected com.fasterxml.jackson.databind.JavaType _fullSerializationType(com.fasterxml.jackson.databind.introspect.AnnotatedMember am)
protected com.fasterxml.jackson.databind.util.Converter<Object,Object> _converter(XmlAdapter<?,?> adapter, boolean forSerialization)
Copyright © 2012-2013 FasterXML. All Rights Reserved.