fix #9360: add parsed hybrid names to newly created names while merge taxonnameEditor...
authorKatja Luther <k.luther@bgbm.org>
Tue, 26 Jan 2021 15:36:48 +0000 (16:36 +0100)
committerKatja Luther <k.luther@bgbm.org>
Tue, 26 Jan 2021 15:36:48 +0000 (16:36 +0100)
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/e4/TaxonEditorInputE4.java

index 6363491bee87bc36442f00e80f0fb68dda24c368..d1027e247db7eaf49786014f26b6fb57c82aa877 100644 (file)
@@ -384,6 +384,17 @@ public class TaxonEditorInputE4  extends CdmEntitySessionInput<TaxonNode>
 //                }
             }
         }
+
+
+            for (HybridRelationship rel : taxonNode.getTaxon().getName().getHybridChildRelations()){
+//                if (!rel.getParentName().isPersited()) {
+                    toSaveNewNames.add(rel.getParentName());
+//                }
+//                if (!rel.getHybridName().isPersited()) {
+                    toSaveNewNames.add(rel.getHybridName());
+//                }
+            }
+
         if (!toSaveNewNames.isEmpty()){
             CdmStore.getService(INameService.class).merge(toSaveNewNames, true);
         }
@@ -393,6 +404,23 @@ public class TaxonEditorInputE4  extends CdmEntitySessionInput<TaxonNode>
 
         toSaveNewNames.clear();
         toSaveNewConcepts.clear();
+//        if (taxonNode.getTaxon().getName().isHybridFormula()){
+//            Set<HybridRelationship> hybridRels = taxonNode.getTaxon().getName().getHybridParentRelations();
+//            for (HybridRelationship rel: hybridRels){
+//                TaxonName hybridName = rel.getHybridName();
+//                TaxonName parentName = rel.getParentName();
+//                CdmStore.getService(INameService.class).merge(hybridName, true);
+//                CdmStore.getService(INameService.class).merge(parentName, true);
+//            }
+//            hybridRels = taxonNode.getTaxon().getName().getHybridChildRelations();
+//            for (HybridRelationship rel: hybridRels){
+//                TaxonName hybridName = rel.getHybridName();
+//                TaxonName parentName = rel.getParentName();
+//                CdmStore.getService(INameService.class).merge(hybridName, true);
+//                CdmStore.getService(INameService.class).merge(parentName, true);
+//            }
+//        }
+
         CdmStore.getService(ITaxonNodeService.class).merge(taxonNode, true);
 
         for(AbstractPostOperation<?> entry:operations){