public static AnnotationDeclaration mergeType(AnnotationDeclaration one, AnnotationDeclaration two) {
if (isAllNull(one, two)) return null;
AnnotationDeclaration annotationDeclaration = null;
if (isAllNotNull(one, two)) {
annotationDeclaration = new AnnotationDeclaration();
annotationDeclaration.setModifiers(
mergeModifiers(one.getModifiers(), two.getModifiers()));
annotationDeclaration.setJavaDoc(
(JavadocComment) mergeSelective(one.getJavaDoc(), two.getJavaDoc()));
annotationDeclaration.setComment(mergeSelective(one.getComment(), two.getComment()));
annotationDeclaration.setAnnotations(
mergeListNoDuplicate(one.getAnnotations(), two.getAnnotations()));
annotationDeclaration.setMembers(mergeBodies(one.getMembers(), two.getMembers()));
LOG.info("merge AnnotationDeclaration --> {}", annotationDeclaration.getName());
} else {
annotationDeclaration = findFirstNotNull(one, two);
LOG.info("add AnnotationDeclaration --> {}", annotationDeclaration.getName());
}
return annotationDeclaration;
}