2016-12-27 10 views
0

я создал пользовательскую аннотацию и использовал, что в классе следующим образом:Получения полого класса от Element

@Reportable 
public class CustomerModel extends BaseModel { 
    public String CustomerName; 
    public int orderCount; 
} 

В процессоре аннотаций У меня есть все элементы, которые были аннотированными с @Reportable, используя следующий код:

Set<? extends javax.lang.model.element.Element> elements = 
roundEnv.getElementsAnnotatedWith(Reportable.class); 

Как я могу получить поля этих классов? Я хочу, чтобы перечислить все свойства CustomerModel

ответ

0

Учитывая один element вашего elements набора вы можете использовать:

List<VariableElement> fields = ElementFilter.fieldsIn(element.getEnclosedElements());