test_class.declarator: copyright =
              "Copyright (c) 2005-2013, ManyDesigns srl"
test_class.modifier: public static final
test_class.original_string: public static final String copyright =
              "Copyright (c) 2005-2013, ManyDesigns srl";
test_class.type: String
test_class.var_name: copyright
test_class.file: elements/src/test/java/com/manydesigns/elements/reflection/JavaClassAccessorTest.java
test_class.identifier: JavaClassAccessorTest
test_class.superclass: extends AbstractElementsTest
test_case.body: @Test(enabled = false)
      public void testJSON() {
          ClassAccessor javaClassAccessor = new JavaClassAccessor(TestBeanMultiPk.class);
          JSONStringer jsonStringer = new JSONStringer();
          ReflectionUtil.classAccessorToJson(javaClassAccessor, jsonStringer);
          assertEquals(
                  jsonStringer.toString(),
                  "{\"name\":\"com.manydesigns.elements.reflection.JavaClassAccessorTest$TestBeanMultiPk\",\"keyProperties\":[\"key1\",\"key2\"],\"properties\":[{\"name\":\"key2\",\"type\":\"java.lang.String\",\"modifiers\":[\"public\"],\"label\":\"key2\",\"annotations\":[{\"type\":\"com.manydesigns.elements.annotations.Key\",\"properties\":{\"order\":2,\"name\":\"default\"}}]},{\"name\":\"key1\",\"type\":\"java.lang.String\",\"modifiers\":[\"public\"],\"label\":\"key1\",\"annotations\":[{\"type\":\"com.manydesigns.elements.annotations.Key\",\"properties\":{\"order\":1,\"name\":\"default\"}}]},{\"name\":\"alternateKey\",\"type\":\"java.lang.String\",\"modifiers\":[\"public\"],\"label\":\"alternate key\",\"annotations\":[{\"type\":\"com.manydesigns.elements.annotations.Key\",\"properties\":{\"order\":-2147483648,\"name\":\"alternate\"}}]},{\"name\":\"p1\",\"type\":\"java.lang.String\",\"modifiers\":[\"public\"],\"label\":\"p1\",\"annotations\":[]},{\"name\":\"p2\",\"type\":\"java.lang.String\",\"modifiers\":[\"public\"],\"label\":\"p2\",\"annotations\":[]}],\"annotations\":[]}");
      }
test_case.class_method_signature: JavaClassAccessorTest.testJSON()
test_case.full_signature: @Test(enabled = false) public void testJSON()
test_case.identifier: testJSON
test_case.invocations: classAccessorToJson assertEquals toString
test_case.modifiers: @Test(enabled = false) public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testJSON()
focal_class.declarator: copyright =
              "Copyright (C) 2005-2020 ManyDesigns srl"
focal_class.modifier: public static final
focal_class.original_string: public static final String copyright =
              "Copyright (C) 2005-2020 ManyDesigns srl";
focal_class.type: String
focal_class.var_name: copyright
focal_class.declarator: PROPERTY_NAME_BLACKLIST = {"class"}
focal_class.modifier: public final static
focal_class.original_string: public final static String[] PROPERTY_NAME_BLACKLIST = {"class"};
focal_class.type: String[]
focal_class.var_name: PROPERTY_NAME_BLACKLIST
focal_class.declarator: javaClass
focal_class.modifier: protected final
focal_class.original_string: protected final Class javaClass;
focal_class.type: Class
focal_class.var_name: javaClass
focal_class.declarator: propertyAccessors
focal_class.modifier: protected final
focal_class.original_string: protected final PropertyAccessor[] propertyAccessors;
focal_class.type: PropertyAccessor[]
focal_class.var_name: propertyAccessors
focal_class.declarator: keyPropertyAccessors
focal_class.modifier: protected final
focal_class.original_string: protected final PropertyAccessor[] keyPropertyAccessors;
focal_class.type: PropertyAccessor[]
focal_class.var_name: keyPropertyAccessors
focal_class.declarator: classAccessorCache
focal_class.modifier: protected static final
focal_class.original_string: protected static final Cache<Class, JavaClassAccessor> classAccessorCache;
focal_class.type: Cache<Class, JavaClassAccessor>
focal_class.var_name: classAccessorCache
focal_class.declarator: logger =
                  LoggerFactory.getLogger(JavaClassAccessor.class)
focal_class.modifier: public static final
focal_class.original_string: public static final Logger logger =
                  LoggerFactory.getLogger(JavaClassAccessor.class);
focal_class.type: Logger
focal_class.var_name: logger
focal_class.file: elements/src/main/java/com/manydesigns/elements/reflection/JavaClassAccessor.java
focal_class.identifier: JavaClassAccessor
focal_class.interfaces: implements ClassAccessor
focal_class.class_method_signature: JavaClassAccessor.getClassAccessor(Class javaClass)
focal_class.full_signature: public static JavaClassAccessor getClassAccessor(Class javaClass)
focal_class.identifier: getClassAccessor
focal_class.modifiers: public static
focal_class.parameters: (Class javaClass)
focal_class.return: JavaClassAccessor
focal_class.signature: JavaClassAccessor getClassAccessor(Class javaClass)
focal_class.class_method_signature: JavaClassAccessor.JavaClassAccessor(Class javaClass)
focal_class.full_signature: protected  JavaClassAccessor(Class javaClass)
focal_class.identifier: JavaClassAccessor
focal_class.modifiers: protected
focal_class.parameters: (Class javaClass)
focal_class.signature:  JavaClassAccessor(Class javaClass)
focal_class.class_method_signature: JavaClassAccessor.setupPropertyAccessors()
focal_class.full_signature: protected List<PropertyAccessor> setupPropertyAccessors()
focal_class.identifier: setupPropertyAccessors
focal_class.modifiers: protected
focal_class.parameters: ()
focal_class.return: List<PropertyAccessor>
focal_class.signature: List<PropertyAccessor> setupPropertyAccessors()
focal_class.class_method_signature: JavaClassAccessor.isValidProperty(PropertyAccessor propertyAccessor)
focal_class.full_signature: protected boolean isValidProperty(PropertyAccessor propertyAccessor)
focal_class.identifier: isValidProperty
focal_class.modifiers: protected
focal_class.parameters: (PropertyAccessor propertyAccessor)
focal_class.return: boolean
focal_class.signature: boolean isValidProperty(PropertyAccessor propertyAccessor)
focal_class.class_method_signature: JavaClassAccessor.setupKeyPropertyAccessors()
focal_class.full_signature: protected List<PropertyAccessor> setupKeyPropertyAccessors()
focal_class.identifier: setupKeyPropertyAccessors
focal_class.modifiers: protected
focal_class.parameters: ()
focal_class.return: List<PropertyAccessor>
focal_class.signature: List<PropertyAccessor> setupKeyPropertyAccessors()
focal_class.class_method_signature: JavaClassAccessor.isPropertyPresent(List<PropertyAccessor> accessorList,
                                        String name)
focal_class.full_signature: private boolean isPropertyPresent(List<PropertyAccessor> accessorList,
                                        String name)
focal_class.identifier: isPropertyPresent
focal_class.modifiers: private
focal_class.parameters: (List<PropertyAccessor> accessorList,
                                        String name)
focal_class.return: boolean
focal_class.signature: boolean isPropertyPresent(List<PropertyAccessor> accessorList,
                                        String name)
focal_class.class_method_signature: JavaClassAccessor.getName()
focal_class.full_signature: public String getName()
focal_class.identifier: getName
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getName()
focal_class.class_method_signature: JavaClassAccessor.getType()
focal_class.full_signature: @Override public Class<?> getType()
focal_class.identifier: getType
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Class<?>
focal_class.signature: Class<?> getType()
focal_class.class_method_signature: JavaClassAccessor.getProperty(String propertyName)
focal_class.full_signature: public PropertyAccessor getProperty(String propertyName)
focal_class.identifier: getProperty
focal_class.modifiers: public
focal_class.parameters: (String propertyName)
focal_class.return: PropertyAccessor
focal_class.signature: PropertyAccessor getProperty(String propertyName)
focal_class.class_method_signature: JavaClassAccessor.getProperties()
focal_class.full_signature: public PropertyAccessor[] getProperties()
focal_class.identifier: getProperties
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: PropertyAccessor[]
focal_class.signature: PropertyAccessor[] getProperties()
focal_class.class_method_signature: JavaClassAccessor.getKeyProperties()
focal_class.full_signature: public PropertyAccessor[] getKeyProperties()
focal_class.identifier: getKeyProperties
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: PropertyAccessor[]
focal_class.signature: PropertyAccessor[] getKeyProperties()
focal_class.class_method_signature: JavaClassAccessor.newInstance()
focal_class.full_signature: public Object newInstance()
focal_class.identifier: newInstance
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: Object
focal_class.signature: Object newInstance()
focal_class.class_method_signature: JavaClassAccessor.isAnnotationPresent(Class<? extends Annotation> annotationClass)
focal_class.full_signature: public boolean isAnnotationPresent(Class<? extends Annotation> annotationClass)
focal_class.identifier: isAnnotationPresent
focal_class.modifiers: public
focal_class.parameters: (Class<? extends Annotation> annotationClass)
focal_class.return: boolean
focal_class.signature: boolean isAnnotationPresent(Class<? extends Annotation> annotationClass)
focal_class.class_method_signature: JavaClassAccessor.getAnnotation(Class<T> annotationClass)
focal_class.full_signature: public T getAnnotation(Class<T> annotationClass)
focal_class.identifier: getAnnotation
focal_class.modifiers: public
focal_class.parameters: (Class<T> annotationClass)
focal_class.return: T
focal_class.signature: T getAnnotation(Class<T> annotationClass)
focal_class.class_method_signature: JavaClassAccessor.getAnnotations()
focal_class.full_signature: public Annotation[] getAnnotations()
focal_class.identifier: getAnnotations
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: Annotation[]
focal_class.signature: Annotation[] getAnnotations()
focal_class.class_method_signature: JavaClassAccessor.getDeclaredAnnotations()
focal_class.full_signature: public Annotation[] getDeclaredAnnotations()
focal_class.identifier: getDeclaredAnnotations
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: Annotation[]
focal_class.signature: Annotation[] getDeclaredAnnotations()
focal_class.class_method_signature: JavaClassAccessor.getJavaClass()
focal_class.full_signature: public Class getJavaClass()
focal_class.identifier: getJavaClass
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: Class
focal_class.signature: Class getJavaClass()
focal_class.class_method_signature: JavaClassAccessor.toString()
focal_class.full_signature: @Override public String toString()
focal_class.identifier: toString
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String toString()
focal_method.body: @Override
      public String toString() {
          return new ToStringBuilder(this)
                  .append("javaClass", javaClass)
                  .toString();
      }
focal_method.class_method_signature: JavaClassAccessor.toString()
focal_method.full_signature: @Override public String toString()
focal_method.identifier: toString
focal_method.invocations: toString append
focal_method.modifiers: @Override public
focal_method.parameters: ()
focal_method.return: String
focal_method.signature: String toString()