filter static method
- Iterable<
ClassElement> classes
Filters the provided iterable of ClassElements to find valid classes for Firestorm. Returns a ValidClassHolder containing two lists: one for Firestore valid classes and one for RDB valid classes.
Implementation
static ValidClassHolder filter(final Iterable<ClassElement> classes) {
//Find annotated classes:
List<ClassElement> validClasses = findAnnotatedClasses(classes);
//Filter out classes that do not have a public no-argument constructor:
// annotatedClasses = findClassesWithPublicNoArgConstructor(annotatedClasses);
//Filter out classes that do not have an ID field of type String:
validClasses = findClassesWithIDField(validClasses);
//Check classes for valid types:
Set<ClassElement> fsValidClasses = checkClassesForValidFSTypes(validClasses);
Set<ClassElement> rdbValidClasses = checkClassesForValidRDBTypes(validClasses);
//Return a ValidClassHolder with the valid classes:
return ValidClassHolder(fsValidClasses, rdbValidClasses);
}