ref #6362 and ref #6365 remove some NVN and Bot/Zoo name occurrences in TaxEditor
authorAndreas Müller <a.mueller@bgbm.org>
Mon, 30 Jan 2017 00:29:58 +0000 (01:29 +0100)
committerAndreas Müller <a.mueller@bgbm.org>
Mon, 30 Jan 2017 00:29:58 +0000 (01:29 +0100)
15 files changed:
eu.etaxonomy.taxeditor.editor/src/test/java/eu/etaxonomy/taxeditor/editor/name/operation/ChangeConceptToSynonymOperationTest.java
eu.etaxonomy.taxeditor.editor/src/test/java/eu/etaxonomy/taxeditor/editor/name/operation/ChangeHomotypicGroupOperationTest.java
eu.etaxonomy.taxeditor.editor/src/test/java/eu/etaxonomy/taxeditor/editor/name/operation/ChangeSynonymToConceptOperationTest.java
eu.etaxonomy.taxeditor.editor/src/test/java/eu/etaxonomy/taxeditor/editor/name/operation/ChangeSynonymToMisapplicationOperationTest.java
eu.etaxonomy.taxeditor.editor/src/test/java/eu/etaxonomy/taxeditor/editor/name/operation/CreateSynonymInExisitingHomotypicalGroupOperationTest.java
eu.etaxonomy.taxeditor.editor/src/test/java/eu/etaxonomy/taxeditor/editor/name/operation/CreateSynonymInNewGroupOperationTest.java
eu.etaxonomy.taxeditor.editor/src/test/java/eu/etaxonomy/taxeditor/editor/name/operation/SwapSynonymAndAcceptedOperationTest.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/newWizard/NewNonViralNameWizard.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/newWizard/NewTaxonWizard.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/name/AuthorshipDetailElement.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/name/NameDetailElement.java
eu.etaxonomy.taxeditor.store/src/test/java/eu/etaxonomy/taxeditor/store/NameProtectTitleCacheTest.java
eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/lazyloading/AbstractLazyInitializerTest.java
eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/lazyloading/RemoteLazyLoadingTest.java
eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/operation/TaxonNameEditorTest.java

index 845801570e3e04bacbc7d83162697a1aec267fdb..7fc0175c2961339c06a787fb44321ba7db1af28a 100644 (file)
@@ -19,6 +19,7 @@ import org.junit.Test;
 import eu.etaxonomy.cdm.model.common.ICdmBase;
 import eu.etaxonomy.cdm.model.name.HomotypicalGroup;
 import eu.etaxonomy.cdm.model.name.NonViralName;
+import eu.etaxonomy.cdm.model.name.TaxonNameBase;
 import eu.etaxonomy.cdm.model.taxon.Synonym;
 import eu.etaxonomy.cdm.model.taxon.Taxon;
 import eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType;
@@ -52,7 +53,7 @@ public class ChangeConceptToSynonymOperationTest extends AbstractTaxeditorOperat
        @BeforeClass
        public static void setUpBeforeClass() throws Exception {
                taxon = Taxon.NewInstance(null, null);
-               concept = Taxon.NewInstance(NonViralName.NewInstance(null), null);
+               concept = Taxon.NewInstance(TaxonNameBase.NewNonViralInstance(null), null);
                homotypicalGroup = HomotypicalGroup.NewInstance();
                
                concept.addTaxonRelation(taxon, TaxonRelationshipType.MISAPPLIED_NAME_FOR(), null, null);
index 60ea9941e06ac82cfa7d9f0d86cacc00a2ce91f0..f321f1cf8c16d422667b1c85f55a0ced8f1b07a3 100644 (file)
@@ -19,6 +19,7 @@ import org.junit.Test;
 import eu.etaxonomy.cdm.model.common.ICdmBase;
 import eu.etaxonomy.cdm.model.name.HomotypicalGroup;
 import eu.etaxonomy.cdm.model.name.NonViralName;
+import eu.etaxonomy.cdm.model.name.TaxonNameBase;
 import eu.etaxonomy.cdm.model.taxon.Synonym;
 import eu.etaxonomy.cdm.model.taxon.Taxon;
 import eu.etaxonomy.taxeditor.editor.name.operation.ChangeHomotypicGroupOperation;
@@ -56,7 +57,7 @@ public class ChangeHomotypicGroupOperationTest extends AbstractTaxeditorOperatio
        public static void setUpBeforeClass() throws Exception {
                
                taxon = Taxon.NewInstance(null, null);
-               synonym = Synonym.NewInstance(NonViralName.NewInstance(null), null);
+               synonym = Synonym.NewInstance(TaxonNameBase.NewNonViralInstance(null), null);
                
                oldHomotypicalGroup = HomotypicalGroup.NewInstance();
                oldHomotypicalGroup.addTypifiedName(synonym.getName());
index f8b44e7a9f6311233c7bcb30c05226139037cd59..c93e37b34d5452f82a41aadef9bc6550d15a162e 100644 (file)
@@ -17,6 +17,7 @@ import org.junit.Test;
 
 import eu.etaxonomy.cdm.model.common.ICdmBase;
 import eu.etaxonomy.cdm.model.name.NonViralName;
+import eu.etaxonomy.cdm.model.name.TaxonNameBase;
 import eu.etaxonomy.cdm.model.taxon.Synonym;
 import eu.etaxonomy.cdm.model.taxon.SynonymType;
 import eu.etaxonomy.cdm.model.taxon.Taxon;
@@ -46,7 +47,7 @@ public class ChangeSynonymToConceptOperationTest extends AbstractTaxeditorOperat
        public static void setUpBeforeClass() throws Exception {
                
                taxon = Taxon.NewInstance(null, null);
-               synonym = Synonym.NewInstance(NonViralName.NewInstance(null), null);
+               synonym = Synonym.NewInstance(TaxonNameBase.NewNonViralInstance(null), null);
                taxonRelationshipType = TaxonRelationshipType.CONTRADICTION();
                
                taxon.addSynonym(synonym, SynonymType.SYNONYM_OF());
index bfa101d0086a7adc75584912c6a90a4556fa99a5..e43b20d69b4d20e15de7ae27ee13ad29c05b171f 100644 (file)
@@ -17,6 +17,7 @@ import org.junit.Test;
 
 import eu.etaxonomy.cdm.model.common.ICdmBase;
 import eu.etaxonomy.cdm.model.name.NonViralName;
+import eu.etaxonomy.cdm.model.name.TaxonNameBase;
 import eu.etaxonomy.cdm.model.taxon.Synonym;
 import eu.etaxonomy.cdm.model.taxon.SynonymType;
 import eu.etaxonomy.cdm.model.taxon.Taxon;
@@ -46,7 +47,7 @@ public class ChangeSynonymToMisapplicationOperationTest extends AbstractTaxedito
        @BeforeClass
        public static void setUpBeforeClass() throws Exception {
                taxon = Taxon.NewInstance(null, null);
-               synonym = Synonym.NewInstance(NonViralName.NewInstance(null), null);
+               synonym = Synonym.NewInstance(TaxonNameBase.NewNonViralInstance(null), null);
                synonymType = SynonymType.SYNONYM_OF();
                taxon.addSynonym(synonym, synonymType);
                
index 1af244e856f3ea152374ace8d51206ecf0312991..7386249857cd1cc92772e6fc7f515861407dfda2 100644 (file)
@@ -16,6 +16,7 @@ import org.junit.Test;
 
 import eu.etaxonomy.cdm.model.name.HomotypicalGroup;
 import eu.etaxonomy.cdm.model.name.NonViralName;
+import eu.etaxonomy.cdm.model.name.TaxonNameBase;
 import eu.etaxonomy.cdm.model.taxon.SynonymType;
 import eu.etaxonomy.cdm.model.taxon.Taxon;
 import eu.etaxonomy.taxeditor.store.operations.AbstractTaxeditorOperationTestBase;
@@ -39,11 +40,11 @@ public class CreateSynonymInExisitingHomotypicalGroupOperationTest extends Abstr
        @Before
        public void setUp() throws Exception {
 
-               taxonName = NonViralName.NewInstance(null);
+               taxonName = TaxonNameBase.NewNonViralInstance(null);
                taxon = Taxon.NewInstance(taxonName, null);
 
                homotypicalGroup = HomotypicalGroup.NewInstance();
-               newSynonymName = NonViralName.NewInstance(null);
+               newSynonymName = TaxonNameBase.NewNonViralInstance(null);
 
                operation = new CreateSynonymInExistingHomotypicalGroupOperation("Create Synonym In Existing Homotypical Group",
                                                        undoContext, taxon, homotypicalGroup, newSynonymName, postOperation);
index 023fe9dbcb437ba34dfec459f616d3d8e6388393..79bfadebe8218069c08955f497e2001a43ff1af5 100644 (file)
@@ -36,7 +36,7 @@ public class CreateSynonymInNewGroupOperationTest extends AbstractTaxeditorOpera
        public static void setUpBeforeClass() throws Exception {
                
                taxon = Taxon.NewInstance(null, null);
-               newSynonymName = NonViralName.NewInstance(null);
+               newSynonymName = TaxonNameBase.NewNonViralInstance(null);
                
                operation = new CreateSynonymInNewGroupOperation("Create Synonyma In New Group",  undoContext, taxon, newSynonymName, postOperation);
        }
index 36a85811574fa0bdaf02dde2493827f68f323f2c..243ce3f5495f7e8551566a0e2db4e9ad9a9e837b 100644 (file)
@@ -20,6 +20,7 @@ import eu.etaxonomy.cdm.model.common.ICdmBase;
 import eu.etaxonomy.cdm.model.description.TaxonDescription;
 import eu.etaxonomy.cdm.model.name.HomotypicalGroup;
 import eu.etaxonomy.cdm.model.name.NonViralName;
+import eu.etaxonomy.cdm.model.name.TaxonNameBase;
 import eu.etaxonomy.cdm.model.taxon.Synonym;
 import eu.etaxonomy.cdm.model.taxon.SynonymType;
 import eu.etaxonomy.cdm.model.taxon.Taxon;
@@ -71,26 +72,26 @@ public class SwapSynonymAndAcceptedOperationTest extends AbstractTaxeditorOperat
                (new DefaultTermInitializer()).initialize();
 
                // Create the original accepted taxon
-               oldTaxonName = NonViralName.NewInstance(null);
+               oldTaxonName = TaxonNameBase.NewNonViralInstance(null);
                taxon = Taxon.NewInstance(oldTaxonName, null);
 
 //             // Create its parent taxon
-//             parentTaxon = Taxon.NewInstance(NonViralName.NewInstance(null), null);
+//             parentTaxon = Taxon.NewInstance(TaxonNameBase.NewNonViralInstance(null), null);
 //             parentTaxon.addTaxonomicChild(taxon, null, null);
 //
 //             // Give it a child taxon
-//             childTaxon = Taxon.NewInstance(NonViralName.NewInstance(null), null);
+//             childTaxon = Taxon.NewInstance(TaxonNameBase.NewNonViralInstance(null), null);
 //             childTaxon.setTaxonomicParent(taxon, null, null);
 
                // Create a homotypic synonym for the accepted taxon
-               taxon.addHomotypicSynonymName(NonViralName.NewInstance(null));
-//             homotypicSynonym = Synonym.NewInstance(NonViralName.NewInstance(null), null);
+               taxon.addHomotypicSynonymName(TaxonNameBase.NewNonViralInstance(null));
+//             homotypicSynonym = Synonym.NewInstance(TaxonNameBase.NewNonViralInstance(null), null);
 //             HomotypicalGroup acceptedHomotypicalGroup = HomotypicalGroup.NewInstance();
 //             acceptedHomotypicalGroup.addTypifiedName(oldTaxon.getName());
 //             acceptedHomotypicalGroup.addTypifiedName(homotypicSynonym.getName());
 
                // Create a heterotypic synonym that will be used to create the new accepted taxon
-               oldSynonymName = NonViralName.NewInstance(null);
+               oldSynonymName = TaxonNameBase.NewNonViralInstance(null);
                oldHeterotypicSynonym = Synonym.NewInstance(oldSynonymName, null);
 //             oldTaxon.addS .addHeterotypicSynonym(oldHeterotypicSynonym, null, null);
                heteroypicalGroup = HomotypicalGroup.NewInstance();
@@ -98,11 +99,11 @@ public class SwapSynonymAndAcceptedOperationTest extends AbstractTaxeditorOperat
                taxon.addSynonym(oldHeterotypicSynonym, SynonymType.HETEROTYPIC_SYNONYM_OF());
 
                // Create a misapplication
-               misapplication = Taxon.NewInstance(NonViralName.NewInstance(null), null);
+               misapplication = Taxon.NewInstance(TaxonNameBase.NewNonViralInstance(null), null);
                taxon.addMisappliedName(misapplication, null, null);
 
                // Create a concept relation
-               concept = Taxon.NewInstance(NonViralName.NewInstance(null), null);
+               concept = Taxon.NewInstance(TaxonNameBase.NewNonViralInstance(null), null);
                conceptRelationshipType = TaxonRelationshipType.CONGRUENT_TO();
                concept.addTaxonRelation(taxon, conceptRelationshipType, null, null);
 
index 82c31994ef04ff988caf5c9b4a5402d2ab1f6aa6..58f680dbffd28c972046d9e52354c1b38e81cfe4 100644 (file)
@@ -13,6 +13,7 @@ import eu.etaxonomy.cdm.api.service.INameService;
 import eu.etaxonomy.cdm.model.name.BotanicalName;
 import eu.etaxonomy.cdm.model.name.NomenclaturalCode;
 import eu.etaxonomy.cdm.model.name.NonViralName;
+import eu.etaxonomy.cdm.model.name.TaxonNameBase;
 import eu.etaxonomy.cdm.model.name.ZoologicalName;
 import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
 import eu.etaxonomy.taxeditor.store.CdmStore;
@@ -38,9 +39,9 @@ public class NewNonViralNameWizard extends AbstractNewEntityWizard<NonViralName>
        protected NonViralName createNewEntity() {
                NomenclaturalCode code = PreferencesUtil.getPreferredNomenclaturalCode();
                if(code.equals(NomenclaturalCode.ICNAFP )){
-                       return BotanicalName.NewInstance(null);
+                       return TaxonNameBase.NewBotanicalInstance(null);
                }else if(code.equals(NomenclaturalCode.ICZN)){
-                       return ZoologicalName.NewInstance(null);
+                       return TaxonNameBase.NewZoologicalInstance(null);
                }
                return null;
        }
index acefcf1374835a0daaeca7b18f43b1b8d096751b..9dc7b64d71bc0e123ddae84d9e4d5f81a0bdcbb3 100644 (file)
@@ -11,6 +11,7 @@ package eu.etaxonomy.taxeditor.newWizard;
 
 import eu.etaxonomy.cdm.api.service.ITaxonService;
 import eu.etaxonomy.cdm.model.name.NonViralName;
+import eu.etaxonomy.cdm.model.name.TaxonNameBase;
 import eu.etaxonomy.cdm.model.taxon.Taxon;
 import eu.etaxonomy.taxeditor.store.CdmStore;
 import eu.etaxonomy.taxeditor.ui.section.name.NonViralNameWizardPage;
@@ -34,7 +35,7 @@ public class NewTaxonWizard extends AbstractNewEntityWizard<Taxon> {
        /** {@inheritDoc} */
        @Override
        protected Taxon createNewEntity() {
-               return Taxon.NewInstance(NonViralName.NewInstance(null), null);
+               return Taxon.NewInstance(TaxonNameBase.NewNonViralInstance(null), null);
        }
 
        /** {@inheritDoc} */
index 783e5a9e6b4c71c348b9be02f863679e80171afc..57576cb8ad8bfdb17c66875cf2bae3665543e59d 100644 (file)
@@ -14,6 +14,7 @@ import java.util.Arrays;
 import eu.etaxonomy.cdm.model.agent.TeamOrPersonBase;
 import eu.etaxonomy.cdm.model.name.NomenclaturalCode;
 import eu.etaxonomy.cdm.model.name.NonViralName;
+import eu.etaxonomy.cdm.model.name.TaxonNameBase;
 import eu.etaxonomy.cdm.model.name.ZoologicalName;
 import eu.etaxonomy.taxeditor.preference.IPreferenceKeys;
 import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
@@ -121,7 +122,7 @@ public class AuthorshipDetailElement extends
        @Override
        public void updateContent() {
                if (getEntity() == null) {
-                       setEntity(NonViralName.NewInstance(null));
+                       setEntity(TaxonNameBase.NewNonViralInstance(null));
                }
 
                super.updateContent();
index ad84eea4cbfd9616ab55f92b81f03e151369c74a..d23812c3d572cf4dbc05ceb38ce6a1953547238e 100644 (file)
@@ -19,6 +19,7 @@ import eu.etaxonomy.cdm.model.name.BotanicalName;
 import eu.etaxonomy.cdm.model.name.NomenclaturalCode;
 import eu.etaxonomy.cdm.model.name.NonViralName;
 import eu.etaxonomy.cdm.model.name.Rank;
+import eu.etaxonomy.cdm.model.name.TaxonNameBase;
 import eu.etaxonomy.cdm.model.name.ZoologicalName;
 import eu.etaxonomy.cdm.strategy.parser.ParserProblem;
 import eu.etaxonomy.taxeditor.preference.IPreferenceKeys;
@@ -125,7 +126,7 @@ public class NameDetailElement extends AbstractIdentifiableEntityDetailElement<N
        @Override
        protected void updateContent() {
                if(getEntity() == null){
-                       setEntity(NonViralName.NewInstance(null));
+                       setEntity(TaxonNameBase.NewNonViralInstance(null));
                }
 
                super.updateContent();
index a2a71bc3d15253d03ed41e51f98e18845a7b509d..a02580e0beb32ba89058755c529cbf01f2254ca8 100644 (file)
@@ -18,6 +18,7 @@ import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
 import eu.etaxonomy.cdm.model.common.DefaultTermInitializer;
 import eu.etaxonomy.cdm.model.name.NonViralName;
 import eu.etaxonomy.cdm.model.name.Rank;
+import eu.etaxonomy.cdm.model.name.TaxonNameBase;
 
 /**
  * @author n.hoffmann
@@ -45,7 +46,7 @@ public class NameProtectTitleCacheTest /*extends CdmIntegrationTest */{
                
                (new DefaultTermInitializer()).initialize();
                
-               name = NonViralName.NewInstance(Rank.SPECIES());
+               name = TaxonNameBase.NewNonViralInstance(Rank.SPECIES());
                
                name.setGenusOrUninomial("Joe");
                name.setSpecificEpithet("mama");
index 2d99180267ac21d37b4212710ac5ebcc29437d8d..a1346e5295192b9129718db663e7deeab1766f37 100644 (file)
@@ -140,7 +140,7 @@ public class AbstractLazyInitializerTest extends BaseRemotingTest {
         public void testCDMEntitySaveLazyNew() {
             Team combAuthor = Team.NewInstance();
             combAuthor.addTeamMember(Person.NewTitledInstance("test member"));
-            BotanicalName name = BotanicalName.NewInstance(null, "Test1", null, null, null, null, null, null, null);
+            BotanicalName name = TaxonNameBase.NewBotanicalInstance(null, "Test1", null, null, null, null, null, null, null);
             name.setCombinationAuthorship(combAuthor);
             Taxon tax1 = Taxon.NewInstance(name, null);
             UUID taxonUuid1 = taxonService.save(tax1).getUuid();
index 92cb68c505e337c28eff645baab39834af7426d5..4c357eadef45c678261fc0aaf95958133b1a929f 100644 (file)
@@ -140,7 +140,7 @@ public class RemoteLazyLoadingTest extends BaseRemotingTest {
 
         Team combAuthor = Team.NewInstance();
         combAuthor.addTeamMember(Person.NewTitledInstance("test member"));
-        BotanicalName name = BotanicalName.NewInstance(null, "Test1", null, null, null, null, null, null, null);
+        BotanicalName name = TaxonNameBase.NewBotanicalInstance(null, "Test1", null, null, null, null, null, null, null);
         name.setCombinationAuthorship(combAuthor);
         Taxon taxon = Taxon.NewInstance(name, null);
         UUID taxonUuid = taxonService.save(taxon).getUuid();
@@ -202,7 +202,7 @@ public class RemoteLazyLoadingTest extends BaseRemotingTest {
     public void testCDMEntitySaveLazyNew() {
         Team combAuthor = Team.NewInstance();
         combAuthor.addTeamMember(Person.NewTitledInstance("test member"));
-        BotanicalName name = BotanicalName.NewInstance(null, "Test1", null, null, null, null, null, null, null);
+        BotanicalName name = TaxonNameBase.NewBotanicalInstance(null, "Test1", null, null, null, null, null, null, null);
         name.setCombinationAuthorship(combAuthor);
         Taxon tax1 = Taxon.NewInstance(name, null);
         UUID taxonUuid1 = taxonService.save(tax1).getUuid();
index cee6198305f931a84e20e7afa6384cc409057d08..8dad50852fcd9fcedf104d2dc0651248db168ca6 100644 (file)
@@ -65,7 +65,7 @@ public class TaxonNameEditorTest extends BaseOperationTest {
         TaxonNode taxonNode = taxonNodeService.load(taxonNodeUuid);
         Taxon taxon = taxonNode.getTaxon();
         HomotypicalGroup group = taxon.getHomotypicGroup();
-        BotanicalName newSynonymName = BotanicalName.NewInstance(null);
+        BotanicalName newSynonymName = TaxonNameBase.NewBotanicalInstance(null);
         newSynonymName.setTitleCache("New Synonym", true);
         operation = new CreateSynonymInExistingHomotypicalGroupOperation("Create Synonym In Existing Homotypical Group",
                 undoContext, taxon, group, newSynonymName, postOperation);
@@ -86,7 +86,7 @@ public class TaxonNameEditorTest extends BaseOperationTest {
         TaxonNode taxonNode = taxonNodeService.load(taxonNodeUuid);
         Taxon taxon = taxonNode.getTaxon();
         HomotypicalGroup group = taxon.getHomotypicGroup();
-        BotanicalName newSynonymName = BotanicalName.NewInstance(null);
+        BotanicalName newSynonymName = TaxonNameBase.NewBotanicalInstance(null);
         newSynonymName.setTitleCache("New Synonym", true);
         operation = new CreateSynonymInExistingHomotypicalGroupOperation("Create Synonym In Existing Homotypical Group",
                 undoContext, taxon, group, newSynonymName, postOperation);
@@ -104,7 +104,7 @@ public class TaxonNameEditorTest extends BaseOperationTest {
         TaxonNode taxonNode = taxonNodeService.load(taxonNodeUuid);
         Taxon taxon = taxonNode.getTaxon();
         HomotypicalGroup group = taxon.getHomotypicGroup();
-        BotanicalName newSynonymName = BotanicalName.NewInstance(null);
+        BotanicalName newSynonymName = TaxonNameBase.NewBotanicalInstance(null);
         newSynonymName.setTitleCache("New Synonym", true);
         operation = new CreateSynonymInExistingHomotypicalGroupOperation("Create Synonym In Existing Homotypical Group",
                 undoContext, taxon, group, newSynonymName, postOperation);
@@ -120,7 +120,7 @@ public class TaxonNameEditorTest extends BaseOperationTest {
 
         taxonNodeService.merge(taxonNode);
 
-        newSynonymName = BotanicalName.NewInstance(null);
+        newSynonymName = TaxonNameBase.NewBotanicalInstance(null);
         newSynonymName.setTitleCache("Another New Synonym", true);
         operation = new CreateSynonymInExistingHomotypicalGroupOperation("Create Synonym In Existing Homotypical Group",
                 undoContext, taxon, group, newSynonymName, postOperation);
@@ -152,7 +152,7 @@ public class TaxonNameEditorTest extends BaseOperationTest {
 
     @Test
     public void addTaxon() {
-        NonViralName taxonName = NonViralName.NewInstance(null);
+        NonViralName taxonName = TaxonNameBase.NewNonViralInstance(null);
         Taxon taxon = Taxon.NewInstance(taxonName, null);
         taxonService.merge(taxon);
     }