Class JaxbAnnotationIntrospector
- java.lang.Object
-
- com.fasterxml.jackson.databind.AnnotationIntrospector
-
- com.fasterxml.jackson.module.jaxb.JaxbAnnotationIntrospector
-
- All Implemented Interfaces:
com.fasterxml.jackson.core.Versioned,com.fasterxml.jackson.databind.AnnotationIntrospector.XmlExtensions,java.io.Serializable
public class JaxbAnnotationIntrospector extends com.fasterxml.jackson.databind.AnnotationIntrospector implements com.fasterxml.jackson.databind.AnnotationIntrospector.XmlExtensions, com.fasterxml.jackson.core.VersionedAnnotation introspector that leverages JAXB annotations where applicable to JSON mapping. As of Jackson 2.0, most JAXB annotations are supported at least to some degree. Ones that are NOT yet supported are:XmlAnyAttributenot supported; possible (if unlikely) to be used (as an alias for@JsonAnySetter)XmlAnyElementnot supported; unlikely to ever be supported.XmlAttachmentRef: JSON does not support external attachmentsXmlElementDeclXmlElementRefsbecause Jackson doesn't have any support for 'named' collection items; some parts could theoretically be supportedXmlInlineBinaryDatasince the underlying concepts (like XOP) do not exist in JSON -- Jackson will always use inline base64 encoding as the methodXmlListbecause JSON does not have (or necessarily need) method of serializing list of values as space-separated StringsXmlMimeTypeXmlMixedsince JSON has no concept of mixed contentXmlRegistrynot supported, unlikely to ever be.XmlSchemanot supported, unlikely to ever be.XmlSchemaTypenot supported, unlikely to ever be.XmlSchemaTypesnot supported, unlikely to ever be.XmlSeeAlsonot supported.
- Any property annotated with
XmlValuewill have implicit property named 'value' on its JSON object; although (as of 2.4) it should be possible to override this name
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected com.fasterxml.jackson.databind.JsonDeserializer<?>_dataHandlerDeserializerprotected com.fasterxml.jackson.databind.JsonSerializer<?>_dataHandlerSerializerprotected boolean_ignoreXmlIDREFprotected java.lang.String_jaxbPackageNameprotected com.fasterxml.jackson.annotation.JsonInclude.Include_nonNillableInclusionInclusion value to return for properties annotated withXmlElementandXmlElementWrapper, in casenillableproperty is left asfalse.protected com.fasterxml.jackson.databind.type.TypeFactory_typeFactoryprotected java.lang.String_xmlValueNameWhen usingXmlValueannotation, a placeholder name is assigned to property (unless overridden by explicit name); this configuration value specified what that name is.protected static booleanDEFAULT_IGNORE_XMLIDREFprotected static java.lang.StringDEFAULT_NAME_FOR_XML_VALUEprotected static com.fasterxml.jackson.annotation.JsonFormat.ValueFORMAT_INTprotected static com.fasterxml.jackson.annotation.JsonFormat.ValueFORMAT_STRINGprotected static java.lang.StringMARKER_FOR_DEFAULTprivate static longserialVersionUID
-
Constructor Summary
Constructors Constructor Description JaxbAnnotationIntrospector()Deprecated.Since 2.1, use constructor 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)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description private static com.fasterxml.jackson.databind.PropertyName_combineNames(java.lang.String localName, java.lang.String namespace, java.lang.String defaultName)protected com.fasterxml.jackson.databind.util.Converter<java.lang.Object,java.lang.Object>_converter(javax.xml.bind.annotation.adapters.XmlAdapter<?,?> adapter, boolean forSerialization)protected java.lang.String_decapitalize(java.lang.String name)protected java.lang.Class<?>_doFindDeserializationType(com.fasterxml.jackson.databind.introspect.Annotated a, com.fasterxml.jackson.databind.JavaType baseType)private java.lang.Boolean_findAlpha(com.fasterxml.jackson.databind.introspect.Annotated ann)protected javax.xml.bind.annotation.adapters.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 java.lang.Class<?>_getTypeFromXmlElement(com.fasterxml.jackson.databind.introspect.Annotated a)protected java.lang.String_okNameForGetter(com.fasterxml.jackson.databind.introspect.AnnotatedMethod am)protected java.lang.String_okNameForMutator(com.fasterxml.jackson.databind.introspect.AnnotatedMethod am)protected java.lang.String_propertyNameToString(com.fasterxml.jackson.databind.PropertyName n)protected java.lang.Class<?>_rawDeserializationType(com.fasterxml.jackson.databind.introspect.Annotated a)protected java.lang.Class<?>_rawSerializationType(com.fasterxml.jackson.databind.introspect.Annotated a)(package private) com.fasterxml.jackson.annotation.JsonInclude.Include_serializationInclusion(com.fasterxml.jackson.databind.introspect.Annotated a, com.fasterxml.jackson.annotation.JsonInclude.Include defValue)protected java.lang.String_stdManglePropertyName(java.lang.String basename, int offset)protected com.fasterxml.jackson.databind.jsontype.TypeResolverBuilder<?>_typeResolverFromXmlElements(com.fasterxml.jackson.databind.introspect.AnnotatedMember am)private booleanadapterTypeMatches(javax.xml.bind.annotation.adapters.XmlAdapter<?,?> adapter, java.lang.Class<?> targetType)private javax.xml.bind.annotation.adapters.XmlAdapter<java.lang.Object,java.lang.Object>checkAdapter(javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter adapterInfo, java.lang.Class<?> typeNeeded, boolean forSerialization)protected javax.xml.bind.annotation.XmlAccessTypefindAccessType(com.fasterxml.jackson.databind.introspect.Annotated ac)Method for locating JAXBXmlAccessTypeannotation value for given annotated entity, if it has one, or inherits one from its ancestors (in JAXB sense, package etc).private javax.xml.bind.annotation.adapters.XmlAdapter<java.lang.Object,java.lang.Object>findAdapter(com.fasterxml.jackson.databind.introspect.Annotated am, boolean forSerialization, java.lang.Class<?> type)Finds the XmlAdapter for the specified annotation.private java.lang.Class<?>findAdapterBoundType(javax.xml.bind.annotation.adapters.XmlAdapter<?,?> adapter)private javax.xml.bind.annotation.adapters.XmlAdapter<java.lang.Object,java.lang.Object>findAdapterForClass(com.fasterxml.jackson.databind.introspect.AnnotatedClass ac, boolean forSerialization)private <A extends java.lang.annotation.Annotation>
AfindAnnotation(java.lang.Class<A> annotationClass, com.fasterxml.jackson.databind.introspect.Annotated annotated, boolean includePackage, boolean includeClass, boolean includeSuperclasses)Finds an annotation associated with given annotatable thing; or if not found, a default annotation it may have (from super class, package and so on)com.fasterxml.jackson.databind.introspect.VisibilityChecker<?>findAutoDetectVisibility(com.fasterxml.jackson.databind.introspect.AnnotatedClass ac, com.fasterxml.jackson.databind.introspect.VisibilityChecker<?> checker)java.lang.ObjectfindContentDeserializer(com.fasterxml.jackson.databind.introspect.Annotated a)java.lang.ObjectfindContentSerializer(com.fasterxml.jackson.databind.introspect.Annotated a)java.lang.ObjectfindDeserializationContentConverter(com.fasterxml.jackson.databind.introspect.AnnotatedMember a)java.lang.ObjectfindDeserializationConverter(com.fasterxml.jackson.databind.introspect.Annotated a)java.lang.ObjectfindDeserializer(com.fasterxml.jackson.databind.introspect.Annotated am)java.lang.String[]findEnumValues(com.fasterxml.jackson.databind.cfg.MapperConfig<?> config, com.fasterxml.jackson.databind.introspect.AnnotatedClass annotatedClass, java.lang.Enum<?>[] enumValues, java.lang.String[] names)java.lang.String[]findEnumValues(java.lang.Class<?> enumType, java.lang.Enum<?>[] enumValues, java.lang.String[] names)Deprecated.com.fasterxml.jackson.annotation.JsonFormat.ValuefindFormat(com.fasterxml.jackson.databind.introspect.Annotated m)java.lang.StringfindImplicitPropertyName(com.fasterxml.jackson.databind.introspect.AnnotatedMember m)private com.fasterxml.jackson.databind.PropertyNamefindJaxbPropertyName(com.fasterxml.jackson.databind.introspect.Annotated ae, java.lang.Class<?> aeType, java.lang.String defaultName)java.lang.ObjectfindKeyDeserializer(com.fasterxml.jackson.databind.introspect.Annotated am)com.fasterxml.jackson.databind.PropertyNamefindNameForDeserialization(com.fasterxml.jackson.databind.introspect.Annotated a)com.fasterxml.jackson.databind.PropertyNamefindNameForSerialization(com.fasterxml.jackson.databind.introspect.Annotated a)java.lang.StringfindNamespace(com.fasterxml.jackson.databind.cfg.MapperConfig<?> config, com.fasterxml.jackson.databind.introspect.Annotated ann)com.fasterxml.jackson.databind.introspect.ObjectIdInfofindObjectIdInfo(com.fasterxml.jackson.databind.introspect.Annotated ann)com.fasterxml.jackson.databind.introspect.ObjectIdInfofindObjectReferenceInfo(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.annotation.JsonInclude.ValuefindPropertyInclusion(com.fasterxml.jackson.databind.introspect.Annotated a)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)private javax.xml.bind.annotation.XmlRootElementfindRootElementAnnotation(com.fasterxml.jackson.databind.introspect.AnnotatedClass ac)com.fasterxml.jackson.databind.PropertyNamefindRootName(com.fasterxml.jackson.databind.introspect.AnnotatedClass ac)java.lang.ObjectfindSerializationContentConverter(com.fasterxml.jackson.databind.introspect.AnnotatedMember a)java.lang.ObjectfindSerializationConverter(com.fasterxml.jackson.databind.introspect.Annotated a)java.lang.String[]findSerializationPropertyOrder(com.fasterxml.jackson.databind.introspect.AnnotatedClass ac)java.lang.BooleanfindSerializationSortAlphabetically(com.fasterxml.jackson.databind.introspect.Annotated ann)com.fasterxml.jackson.databind.JsonSerializer<?>findSerializer(com.fasterxml.jackson.databind.introspect.Annotated am)java.util.List<com.fasterxml.jackson.databind.jsontype.NamedType>findSubtypes(com.fasterxml.jackson.databind.introspect.Annotated a)java.lang.StringfindTypeName(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.PropertyNamefindWrapperName(com.fasterxml.jackson.databind.introspect.Annotated ann)java.lang.StringgetNameUsedForXmlValue()Accessor for getting currently configured placeholder named used for property annotated withXmlValue.com.fasterxml.jackson.annotation.JsonInclude.IncludegetNonNillableInclusion()protected com.fasterxml.jackson.databind.type.TypeFactorygetTypeFactory()booleanhasAsValueAnnotation(com.fasterxml.jackson.databind.introspect.AnnotatedMethod am)Deprecated.booleanhasIgnoreMarker(com.fasterxml.jackson.databind.introspect.AnnotatedMember m)java.lang.BooleanhasRequiredMarker(com.fasterxml.jackson.databind.introspect.AnnotatedMember m)private booleanisContainerType(java.lang.Class<?> raw)Helper method used to distinguish structured types (arrays, Lists, Maps), which with JAXB use different rules for defining content types.private booleanisDataHandler(java.lang.Class<?> type)Determines whether the type is assignable to class javax.activation.DataHandler without requiring that class to be on the classpath.java.lang.BooleanisIgnorableType(com.fasterxml.jackson.databind.introspect.AnnotatedClass ac)protected booleanisJAXBAnnotation(java.lang.annotation.Annotation ann)An annotation is handled if it's in the same package as @XmlElement, including subpackages.java.lang.BooleanisOutputAsAttribute(com.fasterxml.jackson.databind.cfg.MapperConfig<?> config, com.fasterxml.jackson.databind.introspect.Annotated ann)Here we assume fairly simple logic; if there isXmlAttributeto be found, we consider it an attribute; ifXmlElement, not-an-attribute; and otherwise we will consider there to be no information.java.lang.BooleanisOutputAsCData(com.fasterxml.jackson.databind.cfg.MapperConfig<?> config, com.fasterxml.jackson.databind.introspect.Annotated ann)java.lang.BooleanisOutputAsText(com.fasterxml.jackson.databind.cfg.MapperConfig<?> config, com.fasterxml.jackson.databind.introspect.Annotated ann)private booleanisVisible(com.fasterxml.jackson.databind.introspect.AnnotatedField f)Whether the specified field is invisible, per the JAXB visibility rules.private booleanisVisible(com.fasterxml.jackson.databind.introspect.AnnotatedMethod m)com.fasterxml.jackson.databind.JavaTyperefineDeserializationType(com.fasterxml.jackson.databind.cfg.MapperConfig<?> config, com.fasterxml.jackson.databind.introspect.Annotated a, com.fasterxml.jackson.databind.JavaType baseType)com.fasterxml.jackson.databind.JavaTyperefineSerializationType(com.fasterxml.jackson.databind.cfg.MapperConfig<?> config, com.fasterxml.jackson.databind.introspect.Annotated a, com.fasterxml.jackson.databind.JavaType baseType)voidsetNameUsedForXmlValue(java.lang.String name)Configuration method that can be used to change default name ("value") used for properties annotated withXmlValue; note that setting it tonullwill actually avoid name override, and name will instead be derived from underlying method name using standard bean name introspection.JaxbAnnotationIntrospectorsetNonNillableInclusion(com.fasterxml.jackson.annotation.JsonInclude.Include incl)Method to call to change inclusion criteria used for property annotated withXmlElementorXmlElementWrapper, withnillableset asfalse.com.fasterxml.jackson.core.Versionversion()Method that will return version information stored in and read from jar that contains this class.-
Methods inherited from class com.fasterxml.jackson.databind.AnnotationIntrospector
_findAnnotation, _hasAnnotation, _hasOneOf, allIntrospectors, allIntrospectors, findAndAddVirtualProperties, findClassDescription, findCreatorAnnotation, findCreatorBinding, findDefaultEnumValue, findDefaultEnumValue, findEnumAliases, findEnumAliases, findEnumNamingStrategy, findEnumValue, findFilterId, findInjectableValue, findInjectableValueId, findKeySerializer, findMergeInfo, findNamingStrategy, findNullSerializer, findPOJOBuilder, findPOJOBuilderConfig, findPolymorphicTypeInfo, findPropertyAccess, findPropertyAliases, findPropertyDefaultValue, findPropertyDescription, findPropertyIgnoralByName, findPropertyIgnorals, findPropertyInclusionByName, findPropertyIndex, findReferenceType, findRenameByField, findSerializationTyping, findSetterInfo, findUnwrappingNameTransformer, findValueInstantiator, findViews, hasAnyGetter, hasAnyGetterAnnotation, hasAnySetter, hasAnySetterAnnotation, hasAsKey, hasAsValue, hasCreatorAnnotation, isAnnotationBundle, isTypeId, nopInstance, pair, resolveSetterConflict
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
DEFAULT_NAME_FOR_XML_VALUE
protected static final java.lang.String DEFAULT_NAME_FOR_XML_VALUE
- See Also:
- Constant Field Values
-
DEFAULT_IGNORE_XMLIDREF
protected static final boolean DEFAULT_IGNORE_XMLIDREF
- See Also:
- Constant Field Values
-
MARKER_FOR_DEFAULT
protected static final java.lang.String MARKER_FOR_DEFAULT
- See Also:
- Constant Field Values
-
FORMAT_STRING
protected static final com.fasterxml.jackson.annotation.JsonFormat.Value FORMAT_STRING
-
FORMAT_INT
protected static final com.fasterxml.jackson.annotation.JsonFormat.Value FORMAT_INT
-
_jaxbPackageName
protected final java.lang.String _jaxbPackageName
-
_dataHandlerSerializer
protected final com.fasterxml.jackson.databind.JsonSerializer<?> _dataHandlerSerializer
-
_dataHandlerDeserializer
protected final com.fasterxml.jackson.databind.JsonDeserializer<?> _dataHandlerDeserializer
-
_typeFactory
protected final com.fasterxml.jackson.databind.type.TypeFactory _typeFactory
-
_ignoreXmlIDREF
protected final boolean _ignoreXmlIDREF
-
_xmlValueName
protected java.lang.String _xmlValueName
When usingXmlValueannotation, a placeholder name is assigned to property (unless overridden by explicit name); this configuration value specified what that name is.
-
_nonNillableInclusion
protected com.fasterxml.jackson.annotation.JsonInclude.Include _nonNillableInclusion
Inclusion value to return for properties annotated withXmlElementandXmlElementWrapper, in casenillableproperty is left asfalse. Default setting isnull; this is typically changed to eitherJsonInclude.Include.NON_NULLorJsonInclude.Include.NON_EMPTY.- Since:
- 2.7
-
-
Constructor Detail
-
JaxbAnnotationIntrospector
@Deprecated public JaxbAnnotationIntrospector()
Deprecated.Since 2.1, use constructor that takes TypeFactory.
-
JaxbAnnotationIntrospector
public JaxbAnnotationIntrospector(com.fasterxml.jackson.databind.cfg.MapperConfig<?> config)
-
JaxbAnnotationIntrospector
public JaxbAnnotationIntrospector(com.fasterxml.jackson.databind.type.TypeFactory typeFactory)
-
JaxbAnnotationIntrospector
public JaxbAnnotationIntrospector(com.fasterxml.jackson.databind.type.TypeFactory typeFactory, boolean ignoreXmlIDREF)- Parameters:
typeFactory- Type factory used for resolving type informationignoreXmlIDREF- WhetherXmlIDREFannotation should be processed JAXB style (meaning that references are always serialized using id), or not (first reference as full POJO, others as ids)
-
-
Method Detail
-
version
public com.fasterxml.jackson.core.Version version()
Method that will return version information stored in and read from jar that contains this class.- Specified by:
versionin interfacecom.fasterxml.jackson.core.Versioned- Specified by:
versionin classcom.fasterxml.jackson.databind.AnnotationIntrospector
-
setNameUsedForXmlValue
public void setNameUsedForXmlValue(java.lang.String name)
Configuration method that can be used to change default name ("value") used for properties annotated withXmlValue; note that setting it tonullwill actually avoid name override, and name will instead be derived from underlying method name using standard bean name introspection.- Since:
- 2.5
-
getNameUsedForXmlValue
public java.lang.String getNameUsedForXmlValue()
Accessor for getting currently configured placeholder named used for property annotated withXmlValue.
-
setNonNillableInclusion
public JaxbAnnotationIntrospector setNonNillableInclusion(com.fasterxml.jackson.annotation.JsonInclude.Include incl)
Method to call to change inclusion criteria used for property annotated withXmlElementorXmlElementWrapper, withnillableset asfalse.- Since:
- 2.7
-
getNonNillableInclusion
public com.fasterxml.jackson.annotation.JsonInclude.Include getNonNillableInclusion()
- Since:
- 2.7
-
findNamespace
public java.lang.String findNamespace(com.fasterxml.jackson.databind.cfg.MapperConfig<?> config, com.fasterxml.jackson.databind.introspect.Annotated ann)- Specified by:
findNamespacein interfacecom.fasterxml.jackson.databind.AnnotationIntrospector.XmlExtensions
-
isOutputAsAttribute
public java.lang.Boolean isOutputAsAttribute(com.fasterxml.jackson.databind.cfg.MapperConfig<?> config, com.fasterxml.jackson.databind.introspect.Annotated ann)Here we assume fairly simple logic; if there isXmlAttributeto be found, we consider it an attribute; ifXmlElement, not-an-attribute; and otherwise we will consider there to be no information. Caller is likely to default to considering things as elements.- Specified by:
isOutputAsAttributein interfacecom.fasterxml.jackson.databind.AnnotationIntrospector.XmlExtensions
-
isOutputAsText
public java.lang.Boolean isOutputAsText(com.fasterxml.jackson.databind.cfg.MapperConfig<?> config, com.fasterxml.jackson.databind.introspect.Annotated ann)- Specified by:
isOutputAsTextin interfacecom.fasterxml.jackson.databind.AnnotationIntrospector.XmlExtensions
-
isOutputAsCData
public java.lang.Boolean isOutputAsCData(com.fasterxml.jackson.databind.cfg.MapperConfig<?> config, com.fasterxml.jackson.databind.introspect.Annotated ann)- Specified by:
isOutputAsCDatain interfacecom.fasterxml.jackson.databind.AnnotationIntrospector.XmlExtensions
-
findObjectIdInfo
public com.fasterxml.jackson.databind.introspect.ObjectIdInfo findObjectIdInfo(com.fasterxml.jackson.databind.introspect.Annotated ann)
- Overrides:
findObjectIdInfoin classcom.fasterxml.jackson.databind.AnnotationIntrospector
-
findObjectReferenceInfo
public com.fasterxml.jackson.databind.introspect.ObjectIdInfo findObjectReferenceInfo(com.fasterxml.jackson.databind.introspect.Annotated ann, com.fasterxml.jackson.databind.introspect.ObjectIdInfo base)- Overrides:
findObjectReferenceInfoin classcom.fasterxml.jackson.databind.AnnotationIntrospector
-
findRootName
public com.fasterxml.jackson.databind.PropertyName findRootName(com.fasterxml.jackson.databind.introspect.AnnotatedClass ac)
- Overrides:
findRootNamein classcom.fasterxml.jackson.databind.AnnotationIntrospector
-
isIgnorableType
public java.lang.Boolean isIgnorableType(com.fasterxml.jackson.databind.introspect.AnnotatedClass ac)
- Overrides:
isIgnorableTypein classcom.fasterxml.jackson.databind.AnnotationIntrospector
-
hasIgnoreMarker
public boolean hasIgnoreMarker(com.fasterxml.jackson.databind.introspect.AnnotatedMember m)
- Overrides:
hasIgnoreMarkerin classcom.fasterxml.jackson.databind.AnnotationIntrospector
-
hasRequiredMarker
public java.lang.Boolean hasRequiredMarker(com.fasterxml.jackson.databind.introspect.AnnotatedMember m)
- Overrides:
hasRequiredMarkerin classcom.fasterxml.jackson.databind.AnnotationIntrospector
-
findWrapperName
public com.fasterxml.jackson.databind.PropertyName findWrapperName(com.fasterxml.jackson.databind.introspect.Annotated ann)
- Overrides:
findWrapperNamein classcom.fasterxml.jackson.databind.AnnotationIntrospector
-
findImplicitPropertyName
public java.lang.String findImplicitPropertyName(com.fasterxml.jackson.databind.introspect.AnnotatedMember m)
- Overrides:
findImplicitPropertyNamein classcom.fasterxml.jackson.databind.AnnotationIntrospector
-
findFormat
public com.fasterxml.jackson.annotation.JsonFormat.Value findFormat(com.fasterxml.jackson.databind.introspect.Annotated m)
- Overrides:
findFormatin classcom.fasterxml.jackson.databind.AnnotationIntrospector
-
findAutoDetectVisibility
public com.fasterxml.jackson.databind.introspect.VisibilityChecker<?> findAutoDetectVisibility(com.fasterxml.jackson.databind.introspect.AnnotatedClass ac, com.fasterxml.jackson.databind.introspect.VisibilityChecker<?> checker)- Overrides:
findAutoDetectVisibilityin classcom.fasterxml.jackson.databind.AnnotationIntrospector
-
findAccessType
protected javax.xml.bind.annotation.XmlAccessType findAccessType(com.fasterxml.jackson.databind.introspect.Annotated ac)
Method for locating JAXBXmlAccessTypeannotation 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.
-
findTypeResolver
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)- Overrides:
findTypeResolverin classcom.fasterxml.jackson.databind.AnnotationIntrospector
-
findPropertyTypeResolver
public 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)- Overrides:
findPropertyTypeResolverin classcom.fasterxml.jackson.databind.AnnotationIntrospector
-
findPropertyContentTypeResolver
public 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)- Overrides:
findPropertyContentTypeResolverin classcom.fasterxml.jackson.databind.AnnotationIntrospector
-
_typeResolverFromXmlElements
protected com.fasterxml.jackson.databind.jsontype.TypeResolverBuilder<?> _typeResolverFromXmlElements(com.fasterxml.jackson.databind.introspect.AnnotatedMember am)
-
findSubtypes
public java.util.List<com.fasterxml.jackson.databind.jsontype.NamedType> findSubtypes(com.fasterxml.jackson.databind.introspect.Annotated a)
- Overrides:
findSubtypesin classcom.fasterxml.jackson.databind.AnnotationIntrospector
-
findTypeName
public java.lang.String findTypeName(com.fasterxml.jackson.databind.introspect.AnnotatedClass ac)
- Overrides:
findTypeNamein classcom.fasterxml.jackson.databind.AnnotationIntrospector
-
findSerializer
public com.fasterxml.jackson.databind.JsonSerializer<?> findSerializer(com.fasterxml.jackson.databind.introspect.Annotated am)
- Overrides:
findSerializerin classcom.fasterxml.jackson.databind.AnnotationIntrospector
-
isDataHandler
private boolean isDataHandler(java.lang.Class<?> type)
Determines whether the type is assignable to class javax.activation.DataHandler without requiring that class to be on the classpath.- Parameters:
type- The type.- Returns:
- Whether the type is assignable to class javax.activation.DataHandler
-
findContentSerializer
public java.lang.Object findContentSerializer(com.fasterxml.jackson.databind.introspect.Annotated a)
- Overrides:
findContentSerializerin classcom.fasterxml.jackson.databind.AnnotationIntrospector
-
findPropertyInclusion
public com.fasterxml.jackson.annotation.JsonInclude.Value findPropertyInclusion(com.fasterxml.jackson.databind.introspect.Annotated a)
- Overrides:
findPropertyInclusionin classcom.fasterxml.jackson.databind.AnnotationIntrospector
-
_serializationInclusion
com.fasterxml.jackson.annotation.JsonInclude.Include _serializationInclusion(com.fasterxml.jackson.databind.introspect.Annotated a, com.fasterxml.jackson.annotation.JsonInclude.Include defValue)
-
refineSerializationType
public com.fasterxml.jackson.databind.JavaType refineSerializationType(com.fasterxml.jackson.databind.cfg.MapperConfig<?> config, com.fasterxml.jackson.databind.introspect.Annotated a, com.fasterxml.jackson.databind.JavaType baseType) throws com.fasterxml.jackson.databind.JsonMappingException- Overrides:
refineSerializationTypein classcom.fasterxml.jackson.databind.AnnotationIntrospector- Throws:
com.fasterxml.jackson.databind.JsonMappingException
-
findSerializationPropertyOrder
public java.lang.String[] findSerializationPropertyOrder(com.fasterxml.jackson.databind.introspect.AnnotatedClass ac)
- Overrides:
findSerializationPropertyOrderin classcom.fasterxml.jackson.databind.AnnotationIntrospector
-
findSerializationSortAlphabetically
public java.lang.Boolean findSerializationSortAlphabetically(com.fasterxml.jackson.databind.introspect.Annotated ann)
- Overrides:
findSerializationSortAlphabeticallyin classcom.fasterxml.jackson.databind.AnnotationIntrospector
-
_findAlpha
private final java.lang.Boolean _findAlpha(com.fasterxml.jackson.databind.introspect.Annotated ann)
-
findSerializationConverter
public java.lang.Object findSerializationConverter(com.fasterxml.jackson.databind.introspect.Annotated a)
- Overrides:
findSerializationConverterin classcom.fasterxml.jackson.databind.AnnotationIntrospector
-
findSerializationContentConverter
public java.lang.Object findSerializationContentConverter(com.fasterxml.jackson.databind.introspect.AnnotatedMember a)
- Overrides:
findSerializationContentConverterin classcom.fasterxml.jackson.databind.AnnotationIntrospector
-
findNameForSerialization
public com.fasterxml.jackson.databind.PropertyName findNameForSerialization(com.fasterxml.jackson.databind.introspect.Annotated a)
- Overrides:
findNameForSerializationin classcom.fasterxml.jackson.databind.AnnotationIntrospector
-
hasAsValueAnnotation
@Deprecated public boolean hasAsValueAnnotation(com.fasterxml.jackson.databind.introspect.AnnotatedMethod am)
Deprecated.- Overrides:
hasAsValueAnnotationin classcom.fasterxml.jackson.databind.AnnotationIntrospector
-
findEnumValues
@Deprecated public java.lang.String[] findEnumValues(java.lang.Class<?> enumType, java.lang.Enum<?>[] enumValues, java.lang.String[] names)Deprecated.- Overrides:
findEnumValuesin classcom.fasterxml.jackson.databind.AnnotationIntrospector
-
findEnumValues
public java.lang.String[] findEnumValues(com.fasterxml.jackson.databind.cfg.MapperConfig<?> config, com.fasterxml.jackson.databind.introspect.AnnotatedClass annotatedClass, java.lang.Enum<?>[] enumValues, java.lang.String[] names)- Overrides:
findEnumValuesin classcom.fasterxml.jackson.databind.AnnotationIntrospector- Since:
- 2.16
- See Also:
JacksonAnnotationIntrospector.findEnumValues(MapperConfig, AnnotatedClass, Enum[], String[])
-
findDeserializer
public java.lang.Object findDeserializer(com.fasterxml.jackson.databind.introspect.Annotated am)
- Overrides:
findDeserializerin classcom.fasterxml.jackson.databind.AnnotationIntrospector
-
findKeyDeserializer
public java.lang.Object findKeyDeserializer(com.fasterxml.jackson.databind.introspect.Annotated am)
- Overrides:
findKeyDeserializerin classcom.fasterxml.jackson.databind.AnnotationIntrospector
-
findContentDeserializer
public java.lang.Object findContentDeserializer(com.fasterxml.jackson.databind.introspect.Annotated a)
- Overrides:
findContentDeserializerin classcom.fasterxml.jackson.databind.AnnotationIntrospector
-
_doFindDeserializationType
protected java.lang.Class<?> _doFindDeserializationType(com.fasterxml.jackson.databind.introspect.Annotated a, com.fasterxml.jackson.databind.JavaType baseType)
-
refineDeserializationType
public com.fasterxml.jackson.databind.JavaType refineDeserializationType(com.fasterxml.jackson.databind.cfg.MapperConfig<?> config, com.fasterxml.jackson.databind.introspect.Annotated a, com.fasterxml.jackson.databind.JavaType baseType) throws com.fasterxml.jackson.databind.JsonMappingException- Overrides:
refineDeserializationTypein classcom.fasterxml.jackson.databind.AnnotationIntrospector- Throws:
com.fasterxml.jackson.databind.JsonMappingException
-
findNameForDeserialization
public com.fasterxml.jackson.databind.PropertyName findNameForDeserialization(com.fasterxml.jackson.databind.introspect.Annotated a)
- Overrides:
findNameForDeserializationin classcom.fasterxml.jackson.databind.AnnotationIntrospector
-
findDeserializationConverter
public java.lang.Object findDeserializationConverter(com.fasterxml.jackson.databind.introspect.Annotated a)
- Overrides:
findDeserializationConverterin classcom.fasterxml.jackson.databind.AnnotationIntrospector
-
findDeserializationContentConverter
public java.lang.Object findDeserializationContentConverter(com.fasterxml.jackson.databind.introspect.AnnotatedMember a)
- Overrides:
findDeserializationContentConverterin classcom.fasterxml.jackson.databind.AnnotationIntrospector
-
isVisible
private boolean isVisible(com.fasterxml.jackson.databind.introspect.AnnotatedField f)
Whether the specified field is invisible, per the JAXB visibility rules.- Parameters:
f- The field.- Returns:
- Whether the field is invisible.
-
isVisible
private boolean isVisible(com.fasterxml.jackson.databind.introspect.AnnotatedMethod m)
-
findAnnotation
private <A extends java.lang.annotation.Annotation> A findAnnotation(java.lang.Class<A> annotationClass, com.fasterxml.jackson.databind.introspect.Annotated annotated, boolean includePackage, boolean includeClass, boolean includeSuperclasses)Finds an annotation associated with given annotatable thing; or if not found, a default annotation it may have (from super class, package and so on)- Parameters:
annotationClass- the annotation class.annotated- The annotated element.includePackage- Whether the annotation can be found on the package of the annotated element.includeClass- Whether the annotation can be found on the class of the annotated element.includeSuperclasses- Whether the annotation can be found on any superclasses of the class of the annotated element.- Returns:
- The annotation, or null if not found.
-
isJAXBAnnotation
protected boolean isJAXBAnnotation(java.lang.annotation.Annotation ann)
An annotation is handled if it's in the same package as @XmlElement, including subpackages.- Parameters:
ann- The annotation.- Returns:
- Whether the annotation is in the JAXB package.
-
findJaxbPropertyName
private com.fasterxml.jackson.databind.PropertyName findJaxbPropertyName(com.fasterxml.jackson.databind.introspect.Annotated ae, java.lang.Class<?> aeType, java.lang.String defaultName)
-
_combineNames
private static com.fasterxml.jackson.databind.PropertyName _combineNames(java.lang.String localName, java.lang.String namespace, java.lang.String defaultName)
-
findRootElementAnnotation
private javax.xml.bind.annotation.XmlRootElement findRootElementAnnotation(com.fasterxml.jackson.databind.introspect.AnnotatedClass ac)
-
findAdapter
private javax.xml.bind.annotation.adapters.XmlAdapter<java.lang.Object,java.lang.Object> findAdapter(com.fasterxml.jackson.databind.introspect.Annotated am, boolean forSerialization, java.lang.Class<?> type)Finds the XmlAdapter for the specified annotation.- Parameters:
am- The annotated element.forSerialization- If true, adapter for serialization; if false, for deserializationtype-- Returns:
- The adapter, or null if none.
-
checkAdapter
private final javax.xml.bind.annotation.adapters.XmlAdapter<java.lang.Object,java.lang.Object> checkAdapter(javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter adapterInfo, java.lang.Class<?> typeNeeded, boolean forSerialization)
-
findAdapterForClass
private javax.xml.bind.annotation.adapters.XmlAdapter<java.lang.Object,java.lang.Object> findAdapterForClass(com.fasterxml.jackson.databind.introspect.AnnotatedClass ac, boolean forSerialization)
-
getTypeFactory
protected final com.fasterxml.jackson.databind.type.TypeFactory getTypeFactory()
-
isContainerType
private boolean isContainerType(java.lang.Class<?> raw)
Helper method used to distinguish structured types (arrays, Lists, Maps), which with JAXB use different rules for defining content types.
-
adapterTypeMatches
private boolean adapterTypeMatches(javax.xml.bind.annotation.adapters.XmlAdapter<?,?> adapter, java.lang.Class<?> targetType)
-
findAdapterBoundType
private java.lang.Class<?> findAdapterBoundType(javax.xml.bind.annotation.adapters.XmlAdapter<?,?> adapter)
-
_findContentAdapter
protected javax.xml.bind.annotation.adapters.XmlAdapter<?,?> _findContentAdapter(com.fasterxml.jackson.databind.introspect.Annotated ann, boolean forSerialization)
-
_propertyNameToString
protected java.lang.String _propertyNameToString(com.fasterxml.jackson.databind.PropertyName n)
-
_rawDeserializationType
protected java.lang.Class<?> _rawDeserializationType(com.fasterxml.jackson.databind.introspect.Annotated a)
-
_fullDeserializationType
protected com.fasterxml.jackson.databind.JavaType _fullDeserializationType(com.fasterxml.jackson.databind.introspect.AnnotatedMember am)
-
_rawSerializationType
protected java.lang.Class<?> _rawSerializationType(com.fasterxml.jackson.databind.introspect.Annotated a)
-
_fullSerializationType
protected com.fasterxml.jackson.databind.JavaType _fullSerializationType(com.fasterxml.jackson.databind.introspect.AnnotatedMember am)
-
_converter
protected com.fasterxml.jackson.databind.util.Converter<java.lang.Object,java.lang.Object> _converter(javax.xml.bind.annotation.adapters.XmlAdapter<?,?> adapter, boolean forSerialization)
-
_getTypeFromXmlElement
protected java.lang.Class<?> _getTypeFromXmlElement(com.fasterxml.jackson.databind.introspect.Annotated a)
-
_okNameForGetter
protected java.lang.String _okNameForGetter(com.fasterxml.jackson.databind.introspect.AnnotatedMethod am)
-
_okNameForMutator
protected java.lang.String _okNameForMutator(com.fasterxml.jackson.databind.introspect.AnnotatedMethod am)
-
_stdManglePropertyName
protected java.lang.String _stdManglePropertyName(java.lang.String basename, int offset)
-
_decapitalize
protected java.lang.String _decapitalize(java.lang.String name)
-
-