adapt changeSynonymToAcceptedTaxonOperation to changed return type of service method
authorKatja Luther <k.luther@bgbm.org>
Thu, 1 Jun 2017 07:33:35 +0000 (09:33 +0200)
committerKatja Luther <k.luther@bgbm.org>
Thu, 1 Jun 2017 07:33:35 +0000 (09:33 +0200)
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/operation/ChangeSynonymToAcceptedTaxonOperation.java

index 165c1ca5414146b09db5c4f5189381722a14d8e4..3b6a0736e9a8464402223926cf484a37e91ead34 100644 (file)
@@ -19,6 +19,7 @@ import org.eclipse.core.runtime.IStatus;
 
 import eu.etaxonomy.cdm.api.conversation.IConversationEnabled;
 import eu.etaxonomy.cdm.api.service.ITaxonService;
+import eu.etaxonomy.cdm.api.service.UpdateResult;
 import eu.etaxonomy.cdm.api.service.exception.HomotypicalGroupChangeException;
 import eu.etaxonomy.cdm.model.name.TaxonNameBase;
 import eu.etaxonomy.cdm.model.taxon.ITaxonTreeNode;
@@ -84,15 +85,25 @@ public class ChangeSynonymToAcceptedTaxonOperation extends AbstractPersistentPos
        public IStatus execute(IProgressMonitor monitor, IAdaptable info)
                        throws ExecutionException {
 
+               
+               UpdateResult result;
                try {
-                       newNode = (TaxonNode) CdmStore.getService(ITaxonService.class).changeSynonymToAcceptedTaxon(synonym.getUuid(),
+                       result = CdmStore.getService(ITaxonService.class).changeSynonymToAcceptedTaxon(synonym.getUuid(),
                                element.getUuid(),
                                parentNode.getUuid(),
-                               true).getCdmEntity();
+                               true);
+                       if (result.isAbort()){
+                               
+                               MessagingUtils.warningDialog(Messages.ChangeSynonymToAcceptedTaxonOperation_INCONSISTENT_DATA, getClass(), result.toString());
+                               return postExecute(null);
+                       }
+                       newNode = (TaxonNode) result.getCdmEntity();
                } catch (HomotypicalGroupChangeException e) {
-                       MessagingUtils.warningDialog(Messages.ChangeSynonymToAcceptedTaxonOperation_INCONSISTENT_DATA, getClass(), e.getMessage());
-                       return postExecute(null);
+                       // TODO Auto-generated catch block
+                       e.printStackTrace();
                }
+               
+               
                monitor.worked(20);
                //newTaxon = (Taxon) CdmStore.getService(ITaxonService.class).merge(newTaxon);
                //element.removeSynonym(synonym);