import eu.etaxonomy.cdm.model.term.DefinedTermBase;
import eu.etaxonomy.cdm.model.term.TermBase;
import eu.etaxonomy.cdm.model.term.TermVocabulary;
+import eu.etaxonomy.cdm.persistence.dto.AbstractTermDto;
import eu.etaxonomy.cdm.persistence.dto.TermDto;
import eu.etaxonomy.cdm.persistence.dto.TermVocabularyDto;
import eu.etaxonomy.cdm.persistence.hibernate.CdmDataChangeMap;
public boolean postOperation(Object objectAffectedByOperation) {
input.initialiseVocabularies();
- Collection<TermDto> termsToSelect = new HashSet<>();
+ Collection<AbstractTermDto> itemsToSelect = new HashSet<>();
if(objectAffectedByOperation instanceof Collection){
for (Object o : (Collection<?>)objectAffectedByOperation) {
else if(o instanceof TermDto){
viewer.refresh(((TermDto) o).getVocabularyDto());
viewer.refresh(o);
- termsToSelect.add((TermDto) o);
+ itemsToSelect.add((TermDto) o);
}
}
}
- if(objectAffectedByOperation instanceof TermDto){
+ if(objectAffectedByOperation instanceof TermVocabularyDto){
+ viewer.refresh();
+ itemsToSelect.add((AbstractTermDto) objectAffectedByOperation);
+ }
+ else if(objectAffectedByOperation instanceof TermDto){
TermDto termDto = (TermDto) objectAffectedByOperation;
- termsToSelect.add(termDto);
+ itemsToSelect.add(termDto);
viewer.refresh(termDto.getVocabularyDto());
}
else{
viewer.refresh(objectAffectedByOperation);
}
- if(!termsToSelect.isEmpty()){
- StructuredSelection selection = new StructuredSelection(termsToSelect);
+ if(!itemsToSelect.isEmpty()){
+ StructuredSelection selection = new StructuredSelection(itemsToSelect);
viewer.setSelection(selection);
- for (TermDto termDto : termsToSelect) {
+ for (AbstractTermDto termDto : itemsToSelect) {
viewer.expandToLevel(termDto, 1);
}
}