Class ReflectionAnnotationIntrospector

  • All Implemented Interfaces:
    com.fasterxml.jackson.core.Versioned, Serializable

    public class ReflectionAnnotationIntrospector
    extends com.fasterxml.jackson.databind.introspect.JacksonAnnotationIntrospector
    This class helps to dynamically decide how to de-/serialize classes and properties defined in the AAS model library. This is equivalent to adding the following annotations
    • to all interfaces defined in the AAS model:
      • @JsonTypeName([interface name])
      • @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, property = "modelType")
      • @JsonSubTypes({ \@Type(value = [sub-interface].class, name = "[sub-interface name]"), ...}) for each sub-interface
    • to all getter methods returning any type of Collection<?> defined in the AAS model:
      • @JsonInclude(JsonInclude.Include.NON_EMPTY)
    See Also:
    Serialized Form
    • Nested Class Summary

      • Nested classes/interfaces inherited from class com.fasterxml.jackson.databind.AnnotationIntrospector

        com.fasterxml.jackson.databind.AnnotationIntrospector.ReferenceProperty
    • Field Summary

      • Fields inherited from class com.fasterxml.jackson.databind.introspect.JacksonAnnotationIntrospector

        _annotationsInside, _cfgConstructorPropertiesImpliesCreator
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      com.fasterxml.jackson.annotation.JsonInclude.Value findPropertyInclusion​(com.fasterxml.jackson.databind.introspect.Annotated a)  
      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)  
      • Methods inherited from class com.fasterxml.jackson.databind.introspect.JacksonAnnotationIntrospector

        _classIfExplicit, _classIfExplicit, _constructNoTypeResolverBuilder, _constructStdTypeResolverBuilder, _constructVirtualProperty, _constructVirtualProperty, _findConstructorName, _findTypeResolver, _isIgnorable, _propertyName, findAndAddVirtualProperties, findAutoDetectVisibility, findClassDescription, findContentDeserializer, findContentSerializer, findCreatorAnnotation, findCreatorBinding, findDefaultEnumValue, findDeserializationContentConverter, findDeserializationContentType, findDeserializationConverter, findDeserializationKeyType, findDeserializationType, findDeserializer, findEnumAliases, findEnumValue, findEnumValues, findFilterId, findFormat, findImplicitPropertyName, findInjectableValue, findInjectableValueId, findKeyDeserializer, findKeySerializer, findMergeInfo, findNameForDeserialization, findNameForSerialization, findNamingStrategy, findNullSerializer, findObjectIdInfo, findObjectReferenceInfo, findPOJOBuilder, findPOJOBuilderConfig, findPropertyAccess, findPropertyAliases, findPropertyContentTypeResolver, findPropertyDefaultValue, findPropertyDescription, findPropertyIgnoralByName, findPropertyIgnorals, findPropertyInclusionByName, findPropertyIndex, findPropertyTypeResolver, findReferenceType, findRenameByField, findRootName, findSerializationContentConverter, findSerializationContentType, findSerializationConverter, findSerializationKeyType, findSerializationPropertyOrder, findSerializationSortAlphabetically, findSerializationType, findSerializationTyping, findSerializer, findSetterInfo, findUnwrappingNameTransformer, findValueInstantiator, findViews, hasAnyGetter, hasAnyGetterAnnotation, hasAnySetter, hasAnySetterAnnotation, hasAsKey, hasAsValue, hasAsValueAnnotation, hasCreatorAnnotation, hasIgnoreMarker, hasRequiredMarker, isAnnotationBundle, isIgnorableType, isTypeId, readResolve, refineDeserializationType, refineSerializationType, resolveSetterConflict, setConstructorPropertiesImpliesCreator, version
      • Methods inherited from class com.fasterxml.jackson.databind.AnnotationIntrospector

        _findAnnotation, _hasAnnotation, _hasOneOf, allIntrospectors, allIntrospectors, findIgnoreUnknownProperties, findPropertiesToIgnore, findSerializationInclusion, findSerializationInclusionForContent, findWrapperName, nopInstance, pair
    • Constructor Detail

      • ReflectionAnnotationIntrospector

        public ReflectionAnnotationIntrospector()
    • Method Detail

      • findTypeName

        public String findTypeName​(com.fasterxml.jackson.databind.introspect.AnnotatedClass ac)
        Overrides:
        findTypeName in class com.fasterxml.jackson.databind.introspect.JacksonAnnotationIntrospector
      • 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:
        findTypeResolver in class com.fasterxml.jackson.databind.introspect.JacksonAnnotationIntrospector
      • findSubtypes

        public List<com.fasterxml.jackson.databind.jsontype.NamedType> findSubtypes​(com.fasterxml.jackson.databind.introspect.Annotated a)
        Overrides:
        findSubtypes in class com.fasterxml.jackson.databind.introspect.JacksonAnnotationIntrospector
      • findPropertyInclusion

        public com.fasterxml.jackson.annotation.JsonInclude.Value findPropertyInclusion​(com.fasterxml.jackson.databind.introspect.Annotated a)
        Overrides:
        findPropertyInclusion in class com.fasterxml.jackson.databind.introspect.JacksonAnnotationIntrospector