private static final String CONCEPT = "isConceptRelation";
private static final String EMPTY_NAMES = "hasEmptyNames";
private static final String ACCEPTED_AND_NO_HOMOTYPIC_SYNONYMS = "isAcceptedAndHasNoHomotypicSynonyms";
+ private static final String NOT_HOMOTYPIC_SYNONYM_OF_ACCEPTED = "isNotHomotypicSynonymOfAcceptedTaxon";
+
/**
* <p>Constructor for NameEditorMenuPropertyTester.</p>
}
else if(ACCEPTED_AND_NO_HOMOTYPIC_SYNONYMS.equals(property)){
return isAcceptedAndHasNoHomotypicSynonyms(selectedElement);
+ }else if (NOT_HOMOTYPIC_SYNONYM_OF_ACCEPTED.equals(property)){
+ return isNotHomotypicSynonymOfAcceptedTaxon(selectedElement);
}
+
}
return false;
}
return false;
}
+
+ private boolean isNotHomotypicSynonymOfAcceptedTaxon(Object selectedElement) {
+ if (isSynonym(selectedElement)){
+ Synonym synonym = (Synonym) selectedElement;
+ for (Taxon taxon:synonym.getAcceptedTaxa()){
+ if (taxon.getHomotypicGroup().equals(synonym.getHomotypicGroup())){
+ return false;
+ }
+ }
+ }
+ return true;
+ }
+
/**
* @param receiver