Class JsonAnnotationManager

java.lang.Object
jodd.json.meta.JsonAnnotationManager

public class JsonAnnotationManager extends Object
Cached includes and excludes annotation data per type.
  • Field Details

    • JSON_ANNOTATION_MANAGER

      private static final JsonAnnotationManager JSON_ANNOTATION_MANAGER
    • typeDataMap

      private final jodd.util.TypeCache<TypeData> typeDataMap
    • serializationSubclassAware

      private boolean serializationSubclassAware
    • jsonAnnotation

      private Class<? extends Annotation> jsonAnnotation
  • Constructor Details

    • JsonAnnotationManager

      public JsonAnnotationManager()
  • Method Details

    • get

      public static JsonAnnotationManager get()
      Returns instance of this class.
    • lookupTypeData

      public TypeData lookupTypeData(Class type)
      Returns all includes for given type. Returns an empty array when no includes are defined.
    • _lookupTypeData

      protected TypeData _lookupTypeData(Class type)
      Lookups type data and creates one if missing.
    • findSubclassTypeData

      protected TypeData findSubclassTypeData(Class type)
      Finds type data of first annotated superclass or interface.
    • resolveJsonName

      public String resolveJsonName(Class type, String name)
      Returns different name of a property if set by annotation.
    • resolveRealName

      public String resolveRealName(Class type, String jsonName)
      Returns real property name for given JSON property.
    • scanClassForAnnotations

      private TypeData scanClassForAnnotations(Class type)
      Scans class for annotations and returns TypeData.
    • setSerializationSubclassAware

      public JsonAnnotationManager setSerializationSubclassAware(boolean serializationSubclassAware)
      When set searches for first annotated class or interface and use it's data.
    • setJsonAnnotation

      public JsonAnnotationManager setJsonAnnotation(Class<? extends Annotation> jsonAnnotation)
      Sets different annotation.
    • reset

      public void reset()