public static EnumDeclaration mergeType(EnumDeclaration one, EnumDeclaration two) { if (isAllNull(one, two)) return null; EnumDeclaration ed = null; if (isAllNotNull(one, two)) { ed = new EnumDeclaration(); ed.setJavaDoc(mergeSelective(one.getJavaDoc(), two.getJavaDoc())); ed.setComment(mergeSelective(one.getComment(), one.getComment())); ed.setModifiers(mergeModifiers(one.getModifiers(), two.getModifiers())); ed.setAnnotations(mergeListNoDuplicate(one.getAnnotations(), two.getAnnotations())); ed.setImplements(mergeListNoDuplicate(one.getImplements(), two.getImplements())); ed.setName(one.getName()); ed.setEntries(mergeEnumConstants(one.getEntries(), two.getEntries())); LOG.info("merge EnumDeclaration --> {}", ed.getName()); } else { ed = findFirstNotNull(one, two); LOG.info("add EnumDeclaration --> {}", ed.getName()); } return ed; }