ref #3866: adapt deleteHandler to taxonNavigatot changes
authorKatja Luther <k.luther@bgbm.org>
Wed, 5 Jul 2017 09:13:17 +0000 (11:13 +0200)
committerPatrick Plitzner <p.plitzner@bgbm.org>
Thu, 6 Jul 2017 12:55:26 +0000 (14:55 +0200)
eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/navigator/handler/RemotingDeleteTaxonNodeHandler.java

index 95b5bc5f6b83d505de51d9387aa2d1cb343d2be6..725e59ae2e597f38eef5f739d78cecee9fe0a5e2 100644 (file)
@@ -81,11 +81,13 @@ public class RemotingDeleteTaxonNodeHandler extends RemotingCdmHandler {
         if (treeNodes.size() == 1 ){
                ITaxonTreeNode treeNode = treeNodes.iterator().next();
             ITaxonTreeNode taxonNode = treeNode;
-            if (taxonNode instanceof Classification){
-                taxonNode = CdmApplicationState.getCurrentAppConfig().getClassificationService().load(taxonNode.getUuid());
+            if (taxonNode instanceof TaxonNode && !((TaxonNode)taxonNode).hasTaxon()){
+                taxonNode = CdmApplicationState.getCurrentAppConfig().getClassificationService().load(((TaxonNode)taxonNode).getClassification().getUuid());
             }else{
                 taxonNode = CdmApplicationState.getCurrentAppConfig().getTaxonNodeService().load(taxonNode.getUuid());
             }
+            treeNodes = new HashSet<ITaxonTreeNode>();
+            treeNodes.add(taxonNode);
             if (taxonNode == null){
                MessagingUtils.informationDialog(Messages.RemotingDeleteTaxonNodeHandler_NODE_DELETED, Messages.RemotingDeleteTaxonNodeHandler_NODE_DELETED_MESSAGE);
                return Status.CANCEL_STATUS;