/** * Visit the Class declaration and return true if it corresponds to a wisdom controller. * * @param declaration The class declaration created by the JavaParser. * @param extra Extra out value argument, not used here. * @return <code>true</code> if the declaration correspond to a wisdom controller, <code>false</code> otherwise. */ public Boolean visit(ClassOrInterfaceDeclaration declaration, Object extra) { if (declaration.getAnnotations() != null && containsAnnotation(declaration.getAnnotations(), CONTROL_ANNO_NAME)) { return true; } //Get the list of extended and implemented class List<ClassOrInterfaceType> hierarchy = new ArrayList<>(); if (declaration.getExtends() != null) { hierarchy.addAll(declaration.getExtends()); } if (declaration.getImplements() != null) { hierarchy.addAll(declaration.getImplements()); } return containsClassName(hierarchy, CONTROL_CLASSNAMES); }
classInfo.superclassName = extendsList == null || extendsList.isEmpty() ? null : getClassName(packageName, extendsList.get(0).toString(), imports); List<ClassOrInterfaceType> implementList = cid.getImplements();
classInfo.superclassName = extendsList == null || extendsList.isEmpty() ? null : getClassName(packageName, extendsList.get(0).toString(), imports); List<ClassOrInterfaceType> implementList = cid.getImplements();
List<ClassOrInterfaceType> implementz = n.getImplements(); if (implementz != null) { for (int i = 0; i < implementz.size(); i++) {
@Override public ClassOrInterfaceDeclaration doMerge(ClassOrInterfaceDeclaration first, ClassOrInterfaceDeclaration second) { ClassOrInterfaceDeclaration declaration = new ClassOrInterfaceDeclaration(); declaration.setInterface(first.isInterface()); declaration.setName(first.getName()); declaration.setModifiers(mergeModifiers(first.getModifiers(), second.getModifiers())); declaration.setJavaDoc(mergeSingle(first.getJavaDoc(), second.getJavaDoc())); declaration.setTypeParameters(mergeCollections(first.getTypeParameters(), second.getTypeParameters())); declaration.setImplements(mergeCollections(first.getImplements(), second.getImplements())); declaration.setExtends(mergeCollections(first.getExtends(), second.getExtends())); declaration.setAnnotations(mergeCollections(first.getAnnotations(), second.getAnnotations())); declaration.setMembers(mergeCollections(first.getMembers(), second.getMembers())); return declaration; }
public static ClassOrInterfaceDeclaration mergeType(ClassOrInterfaceDeclaration one, ClassOrInterfaceDeclaration two) { if (isAllNull(one, two)) return null; ClassOrInterfaceDeclaration coid = null; if (isAllNotNull(one, two)) { coid = new ClassOrInterfaceDeclaration(); coid.setName(one.getName()); coid.setJavaDoc(mergeSelective(one.getJavaDoc(), two.getJavaDoc())); coid.setComment(mergeSelective(one.getComment(), two.getComment())); coid.setAnnotations(mergeListNoDuplicate(one.getAnnotations(), two.getAnnotations())); coid.setModifiers(mergeModifiers(one.getModifiers(), two.getModifiers())); coid.setExtends(mergeListNoDuplicate(one.getExtends(), two.getExtends())); coid.setImplements(mergeListNoDuplicate(one.getImplements(), two.getImplements())); coid.setTypeParameters(mergeSelective(one.getTypeParameters(), two.getTypeParameters())); coid.setInterface(one.isInterface()); coid.setMembers(mergeBodies(one.getMembers(), two.getMembers())); LOG.info("merge ClassOrInterfaceDeclaration --> {}", coid.getName()); } else { coid = findFirstNotNull(one, two); LOG.info("add ClassOrInterfaceDeclaration --> {}", coid.getName()); } return coid; }