private List<FieldDescriptor> createFieldList(TypeElement serviceElement) { return ListUtils.unmodifiableList( CollectionUtils.collect( serviceElement.getEnclosedElements(), new Transformer<Element, FieldDescriptor>() { @Override public FieldDescriptor transform(Element enclosed) { FieldDescriptor fieldDescriptor = enclosed.accept(AnnotationFieldVisitor.INSTANCE, utils); return fieldDescriptor; } }, new ArrayList<FieldDescriptor>())); }
@Override public boolean process(Set<? extends TypeElement> annotations, RoundEnvironment roundEnv) { for (TypeElement te : ElementFilter.typesIn(roundEnv.getRootElements())) { if (isSimpleName(te, "InvalidSource")) { for (Element c : te.getEnclosedElements()) { for (AnnotationMirror am : c.getAnnotationMirrors()) { Element ate = am.getAnnotationType().asElement(); if (isSimpleName(ate, "ExpectInterfaces")) { checkInterfaces((TypeElement) c, getValue(am)); } else if (isSimpleName(ate, "ExpectSupertype")) { checkSupertype((TypeElement) c, getValue(am)); } } } } } return true; }