ref #6805 Set moved node as CDM entity for UpdateResult
[cdmlib.git] / cdmlib-services / src / main / java / eu / etaxonomy / cdm / api / service / FeatureNodeServiceImpl.java
index 205b51117841b851df476aa2567ce334fc9e7dc4..b0725fb59187954d150281997411aa947c0edba9 100644 (file)
@@ -99,12 +99,20 @@ public class FeatureNodeServiceImpl extends VersionableServiceBase<FeatureNode,
             return result;
         }
 
+        @Override
+        public UpdateResult createChildFeatureNode(FeatureNode node, Feature featureChild){
+            Feature feature = (Feature) termService.save(featureChild);
+            return addChildFeatureNode(node, feature);
+        }
+
         @Override
         public UpdateResult addChildFeatureNode(FeatureNode node, Feature featureChild){
-            UpdateResult result = new UpdateResult();
             FeatureNode childNode = FeatureNode.NewInstance(featureChild);
+            UpdateResult result = new UpdateResult();
             node.addChild(childNode);
+            save(childNode);
             result.addUpdatedObject(node);
+            result.setCdmEntity(childNode);
             return result;
         }
 
@@ -155,7 +163,7 @@ public class FeatureNodeServiceImpl extends VersionableServiceBase<FeatureNode,
         if(parent!=null){
             result.addUpdatedObject(parent);
         }
-        result.setCdmEntity(targetNode.getFeatureTree());
+        result.setCdmEntity(movedNode);
         return result;
     }