- @Override
- public boolean visit(final NormalAnnotation node) {
- if (node.getTypeName().toString()
- .equals(Description.class.getCanonicalName())) {
- if (node.getParent() instanceof TypeDeclaration) {
- descriptionAnotValue = node.values().get(0).toString();
- } else if (node.getParent() instanceof MethodDeclaration) {
- String descr = node.values().get(0).toString();
- methodDescriptions.put(((MethodDeclaration) node
- .getParent()).getName().toString(), descr);
- }
- } else if (node
- .getTypeName()
- .toString()
- .equals(ServiceInterfaceAnnotation.class.getCanonicalName())) {
- String text1 = node.values().get(0).toString();
- String text2 = node.values().get(1).toString();
- if (text1.contains("value")) {
- sieAnnotValue = text1;
- sieAnnotOsgiRegistrationType = text2;
- } else {
- sieAnnotValue = text2;
- sieAnnotOsgiRegistrationType = text1;
- }
- }
- return super.visit(node);
- }
-
- @Override
- public boolean visit(final TypeDeclaration node) {
- javadoc = node.getJavadoc() == null ? null : node.getJavadoc()
- .toString();
- type = node.getName().toString();
- List<?> superIfcs = node.superInterfaceTypes();
- extnds = superIfcs != null && !superIfcs.isEmpty() ? superIfcs
- .toString() : null;
- return super.visit(node);
- }
- }
-
- private static class MbeASTVisitor extends SieASTVisitor {
- private String implmts;
- private final Set<String> fieldDeclarations = Sets.newHashSet();
- private final Set<String> constructors = Sets.newHashSet();
- private final Set<String> methods = new HashSet<String>();
- private final Map<String, String> requireIfc = Maps.newHashMap();
- private final Map<String, String> methodJavadoc = Maps.newHashMap();
-
- @Override
- public boolean visit(final NormalAnnotation node) {
- boolean result = super.visit(node);
- if (node.getTypeName().toString()
- .equals(RequireInterface.class.getCanonicalName())
- && node.getParent() instanceof MethodDeclaration) {
- // remember only top level description annotation
- String reqVal = node.values().get(0).toString();
- requireIfc.put(((MethodDeclaration) node.getParent()).getName()
- .toString(), reqVal);
- }
- return result;
- }
-
- @Override
- public boolean visit(final FieldDeclaration node) {
- fieldDeclarations.add(node.toString());
- return super.visit(node);
- }
-
- @Override
- public boolean visit(final MethodDeclaration node) {
- if (node.isConstructor()) {
- constructors.add(node.toString());
- } else {
- String methodSignature = node.getReturnType2() + " " + node.getName() + "(";
- boolean first = true;
- for (Object o : node.parameters()) {
- if (first){
- first = false;
- } else {
- methodSignature += ",";
- }
- methodSignature += o.toString();
- }
- methodSignature += ")";
- methods.add(methodSignature);
- if (node.getJavadoc() != null) {
- methodJavadoc.put(methodSignature, node.getJavadoc().toString());
- }
- }
- return super.visit(node);
- }
-
- @Override
- public boolean visit(final TypeDeclaration node) {
- boolean visit = super.visit(node);
- List<?> superIfcs = node.superInterfaceTypes();
- implmts = superIfcs != null && !superIfcs.isEmpty() ? superIfcs
- .toString() : null;
- extnds = node.getSuperclassType() == null ? null : node
- .getSuperclassType().toString();
- return visit;
- }