Revision d34abf30
Added by Andreas Müller over 7 years ago
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/handler/NameEditorMenuPropertyTester.java | ||
---|---|---|
10 | 10 |
|
11 | 11 |
package eu.etaxonomy.taxeditor.editor.name.handler; |
12 | 12 |
|
13 |
import java.util.Set; |
|
14 |
|
|
15 | 13 |
import org.eclipse.core.expressions.PropertyTester; |
16 | 14 |
import org.eclipse.jface.viewers.IStructuredSelection; |
17 | 15 |
|
... | ... | |
51 | 49 |
public NameEditorMenuPropertyTester() { |
52 | 50 |
} |
53 | 51 |
|
54 |
/* (non-Javadoc) |
|
55 |
* @see org.eclipse.core.expressions.IPropertyTester#test(java.lang.Object, java.lang.String, java.lang.Object[], java.lang.Object) |
|
56 |
*/ |
|
57 | 52 |
/** {@inheritDoc} */ |
58 | 53 |
@Override |
59 | 54 |
public boolean test(Object receiver, String property, Object[] args, |
... | ... | |
127 | 122 |
private boolean isNotHomotypicSynonymOfAcceptedTaxon(Object selectedElement) { |
128 | 123 |
if (isSynonym(selectedElement)){ |
129 | 124 |
Synonym synonym = (Synonym) selectedElement; |
130 |
for (Taxon taxon:synonym.getAcceptedTaxa()){
|
|
131 |
if (taxon.getHomotypicGroup().equals(synonym.getHomotypicGroup())){
|
|
132 |
return false;
|
|
133 |
}
|
|
125 |
Taxon taxon = synonym.getAcceptedTaxon();
|
|
126 |
if (taxon != null &&
|
|
127 |
taxon.getHomotypicGroup().equals(synonym.getHomotypicGroup())){
|
|
128 |
return false;
|
|
134 | 129 |
} |
135 | 130 |
} |
136 | 131 |
return true; |
... | ... | |
177 | 172 |
return ((Taxon) selectedElement).isOrphaned(); |
178 | 173 |
} |
179 | 174 |
else if(selectedElement instanceof Synonym){ |
180 |
Set<Taxon> acceptedTaxa = ((Synonym) selectedElement).getAcceptedTaxa(); |
|
181 |
for (Taxon taxon : acceptedTaxa) { |
|
182 |
if(!taxon.isOrphaned()){ |
|
183 |
return false; |
|
184 |
} |
|
185 |
} |
|
175 |
return ((Synonym) selectedElement).isOrphaned(); |
|
186 | 176 |
} |
187 | 177 |
return false; |
188 | 178 |
} |
Also available in: Unified diff
ref #5974 Remove synonym relationships (compiling)