merge with local branch
authorU-BGBM\k.luther <k.luther@BGBM11732.bgbm.fu-berlin.de>
Wed, 23 Sep 2015 12:29:31 +0000 (14:29 +0200)
committerU-BGBM\k.luther <k.luther@BGBM11732.bgbm.fu-berlin.de>
Wed, 23 Sep 2015 12:29:31 +0000 (14:29 +0200)
eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/navigator/handler/DeleteHandler.java
eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/navigator/operation/ChangeAcceptedTaxonToSynonymOperation.java

index 6dd3d548b0c62a15acc02da283ba8e635b9d346c..ecbc76b929bcf8b837d4c8bc0fced02405984fb6 100644 (file)
@@ -86,12 +86,15 @@ public class DeleteHandler extends AbstractHandler{
                }
                AbstractPostOperation operation = null;
                TaxonDeletionConfigurator config = new TaxonDeletionConfigurator();
+               config.setDeleteInAllClassifications(false);
+
                if (treeNodes.size() == 1 ){
                        try {
 
                                ITaxonTreeNode treeNode = treeNodes.iterator().next();
                                ITaxonTreeNode taxonNode =treeNode;
                                TaxonNodeDeletionConfigurator configNodes = new TaxonNodeDeletionConfigurator();
+
                                //configNodes.setDeleteTaxon(false);
                                if (taxonNode instanceof Classification && taxonNode.hasChildNodes()){
                                        if(!DeleteConfiguratorDialog.openConfirmWithConfigurator(config, HandlerUtil.getActiveShell(event), "Confirm Deletion", "Do you really want to delete the classification? The tree has children, they will be deleted, too.")){
@@ -112,17 +115,17 @@ public class DeleteHandler extends AbstractHandler{
                                 "Do you really want to delete the selected node? It has childnodes, they will be deleted, too.",
                                 MessageDialog.WARNING, new String[] { "Delete all children",
                                         "Move children to parent node", "Skip" }, 0);
-                                               int result = dialog.open();
+                                               int dialog_result = dialog.open();
 
-                                               if (result == 0){
+                                               if (dialog_result == 0){
                                                        //delete all children
                                                        configNodes.setChildHandling(ChildHandling.DELETE);
                                                        config.setTaxonNodeConfig(configNodes);
-                                               } else if (result == 1){
+                                               } else if (dialog_result == 1){
                                                        //move children
                                                        configNodes.setChildHandling(ChildHandling.MOVE_TO_PARENT);
                                                        config.setTaxonNodeConfig(configNodes);
-                                               } else if (result == 2){
+                                               } else if (dialog_result == 2){
                                                        //skip
                                                        return null;
 
index 9d0ca887261d2c9fc807960fdea9a3f315fe3d96..d06bfba63c176450d12982e12bf6f15a814df443 100644 (file)
@@ -16,10 +16,8 @@ import org.eclipse.core.runtime.IAdaptable;
 import org.eclipse.core.runtime.IProgressMonitor;
 import org.eclipse.core.runtime.IStatus;
 import org.eclipse.core.runtime.Status;
-import org.eclipse.jface.dialogs.MessageDialog;
 
 import eu.etaxonomy.cdm.api.conversation.IConversationEnabled;
-import eu.etaxonomy.cdm.api.service.DeleteResult;
 import eu.etaxonomy.cdm.api.service.ITaxonNodeService;
 import eu.etaxonomy.cdm.api.service.UpdateResult;
 import eu.etaxonomy.cdm.api.service.config.TaxonDeletionConfigurator;
@@ -83,19 +81,21 @@ public class ChangeAcceptedTaxonToSynonymOperation extends
                monitor.worked(20);
                bind();
 
-       Taxon oldTaxon = (Taxon) HibernateProxyHelper.deproxy(((TaxonNode) taxonNode).getTaxon());
-               try {
+       Taxon oldTaxon = HibernateProxyHelper.deproxy(((TaxonNode) taxonNode).getTaxon(), Taxon.class);
+       Taxon newAcceptedTaxon = HibernateProxyHelper.deproxy(newAcceptedTaxonNode.getTaxon(), Taxon.class);
 
+               try {
                    UpdateResult result = CdmStore.getService(ITaxonNodeService.class).makeTaxonNodeASynonymOfAnotherTaxonNode(taxonNode.getUuid(), newAcceptedTaxonNode.getUuid(), null, null, null);
-      
+
+
                    if (!result.getExceptions().isEmpty() && result.isOk()){
                        String separator = ", ";
                            String exceptionString = "";
                            for (Exception exception : result.getExceptions()) {
                            exceptionString += exception.getLocalizedMessage()+separator;
                        }
-                               
-                       MessagingUtils.informationDialog("Synonym created but taxon is not deleted.", exceptionString);                 
+
+                       MessagingUtils.informationDialog("Synonym created but taxon is not deleted.", exceptionString);
                    } else if (result.isAbort() || result.isError()){
                        MessagingUtils.errorDialog("Synonym could not created", null, result.toString(), TaxeditorNavigationPlugin.PLUGIN_ID, null, true);
                    }
@@ -103,7 +103,7 @@ public class ChangeAcceptedTaxonToSynonymOperation extends
             MessagingUtils.errorDialog("Operation failed", this, e.getMessage(), TaxeditorNavigationPlugin.PLUGIN_ID, e, false);
             return Status.CANCEL_STATUS;
         }
-               
+
                monitor.worked(40);
 
                return postExecute(oldTaxon);