private static List<ExecutableElement> getClassMethods(TypeElement classElement) { if (classElement.getQualifiedName().toString().equals(Object.class.getName())) // we don't need Object's methods return null; TypeElement superclassElement = (TypeElement) ((DeclaredType) classElement.getSuperclass()).asElement(); List<ExecutableElement> superclassesMethods = getClassMethods(superclassElement); List<ExecutableElement> classMethods = ElementFilter.methodsIn(classElement.getEnclosedElements()); if (superclassesMethods == null) return classMethods; else superclassesMethods.addAll(classMethods); return superclassesMethods; }
private static List<ExecutableElement> getClassMethods(TypeElement classElement) { if (classElement.getQualifiedName().toString().equals(Object.class.getName())) // we don't need Object's methods return null; TypeElement superclassElement = (TypeElement) ((DeclaredType) classElement.getSuperclass()).asElement(); List<ExecutableElement> superclassesMethods = getClassMethods(superclassElement); List<ExecutableElement> classMethods = ElementFilter.methodsIn(classElement.getEnclosedElements()); if (superclassesMethods == null) return classMethods; else superclassesMethods.addAll(classMethods); return superclassesMethods; }
private static List<ExecutableElement> getClassMethods(TypeElement classElement) { if (classElement.getQualifiedName().toString().equals(Object.class.getName())) // we don't need Object's methods return null; TypeElement superclassElement = (TypeElement) ((DeclaredType) classElement.getSuperclass()).asElement(); List<ExecutableElement> superclassesMethods = getClassMethods(superclassElement); List<ExecutableElement> classMethods = ElementFilter.methodsIn(classElement.getEnclosedElements()); if (superclassesMethods == null) return classMethods; else superclassesMethods.addAll(classMethods); return superclassesMethods; }
private static List<ExecutableElement> getClassMethods(TypeElement classElement) { if (classElement.getQualifiedName().toString().equals(Object.class.getName())) // we don't need Object's methods return null; TypeElement superclassElement = (TypeElement) ((DeclaredType) classElement.getSuperclass()).asElement(); List<ExecutableElement> superclassesMethods = getClassMethods(superclassElement); List<ExecutableElement> classMethods = ElementFilter.methodsIn(classElement.getEnclosedElements()); if (superclassesMethods == null) return classMethods; else superclassesMethods.addAll(classMethods); return superclassesMethods; }
protected boolean classImplementsSei(TypeElement classElement, TypeElement interfaceElement) { for (TypeMirror interfaceType : classElement.getInterfaces()) { if (((DeclaredType) interfaceType).asElement().equals(interfaceElement)) return true; } List<ExecutableElement> classMethods = getClassMethods(classElement); boolean implementsMethod; for (ExecutableElement interfaceMethod : ElementFilter.methodsIn(interfaceElement.getEnclosedElements())) { implementsMethod = false; for (ExecutableElement classMethod : classMethods) { if (sameMethod(interfaceMethod, classMethod)) { implementsMethod = true; classMethods.remove(classMethod); break; } } if (!implementsMethod) { builder.processError(WebserviceapMessages.WEBSERVICEAP_METHOD_NOT_IMPLEMENTED(interfaceElement.getSimpleName(), classElement.getSimpleName(), interfaceMethod), interfaceMethod); return false; } } return true; }
protected boolean classImplementsSei(TypeElement classElement, TypeElement interfaceElement) { for (TypeMirror interfaceType : classElement.getInterfaces()) { if (((DeclaredType) interfaceType).asElement().equals(interfaceElement)) return true; } List<ExecutableElement> classMethods = getClassMethods(classElement); boolean implementsMethod; for (ExecutableElement interfaceMethod : ElementFilter.methodsIn(interfaceElement.getEnclosedElements())) { implementsMethod = false; for (ExecutableElement classMethod : classMethods) { if (sameMethod(interfaceMethod, classMethod)) { implementsMethod = true; classMethods.remove(classMethod); break; } } if (!implementsMethod) { builder.processError(WebserviceapMessages.WEBSERVICEAP_METHOD_NOT_IMPLEMENTED(interfaceElement.getSimpleName(), classElement.getSimpleName(), interfaceMethod), interfaceMethod); return false; } } return true; }
protected boolean classImplementsSei(TypeElement classElement, TypeElement interfaceElement) { for (TypeMirror interfaceType : classElement.getInterfaces()) { if (((DeclaredType) interfaceType).asElement().equals(interfaceElement)) return true; } List<ExecutableElement> classMethods = getClassMethods(classElement); boolean implementsMethod; for (ExecutableElement interfaceMethod : ElementFilter.methodsIn(interfaceElement.getEnclosedElements())) { implementsMethod = false; for (ExecutableElement classMethod : classMethods) { if (sameMethod(interfaceMethod, classMethod)) { implementsMethod = true; classMethods.remove(classMethod); break; } } if (!implementsMethod) { builder.processError(WebserviceapMessages.WEBSERVICEAP_METHOD_NOT_IMPLEMENTED(interfaceElement.getSimpleName(), classElement.getSimpleName(), interfaceMethod), interfaceMethod); return false; } } return true; }
protected boolean classImplementsSei(TypeElement classElement, TypeElement interfaceElement) { for (TypeMirror interfaceType : classElement.getInterfaces()) { if (((DeclaredType) interfaceType).asElement().equals(interfaceElement)) return true; } List<ExecutableElement> classMethods = getClassMethods(classElement); boolean implementsMethod; for (ExecutableElement interfaceMethod : ElementFilter.methodsIn(interfaceElement.getEnclosedElements())) { implementsMethod = false; for (ExecutableElement classMethod : classMethods) { if (sameMethod(interfaceMethod, classMethod)) { implementsMethod = true; classMethods.remove(classMethod); break; } } if (!implementsMethod) { builder.processError(WebserviceapMessages.WEBSERVICEAP_METHOD_NOT_IMPLEMENTED(interfaceElement.getSimpleName(), classElement.getSimpleName(), interfaceMethod), interfaceMethod); return false; } } return true; }