private List < Field > getAllFields ( ) { List < Field > allFields = new ArrayList <> ( ) ; Class < ? > clazz = entityClass ; boolean stop ; do { List < Field > fields = IntrospectionUtils . getPersistableFields ( clazz ) ; allFields . addAll ( fields ) ; clazz = clazz . getSuperclass ( ) ; stop = clazz == null || ! clazz . isAnnotationPresent ( MappedSuperClass . class ) ; } while ( ! stop ) ; return allFields ; }
Processes the entity class and any super classes that are MappedSupperClasses and returns the fields .