changes for vernacular names import
[cdmlib-apps.git] / cdm-pesi / src / main / java / eu / etaxonomy / cdm / app / pesi / ErmsActivator.java
index 997c140f1873dbb6cedbe8d9647883f6e2be00b5..d6bd8e5a322d826f18f1601e8c3f01c882b41178 100644 (file)
@@ -22,8 +22,8 @@ import eu.etaxonomy.cdm.io.common.IImportConfigurator.CHECK;
 import eu.etaxonomy.cdm.io.common.IImportConfigurator.DO_REFERENCES;\r
 import eu.etaxonomy.cdm.io.common.Source;\r
 import eu.etaxonomy.cdm.io.pesi.erms.ErmsImportConfigurator;\r
+import eu.etaxonomy.cdm.io.pesi.out.PesiTransformer;\r
 import eu.etaxonomy.cdm.model.common.ISourceable;\r
-import eu.etaxonomy.cdm.model.name.NomenclaturalCode;\r
 import eu.etaxonomy.cdm.model.name.ZoologicalName;\r
 \r
 \r
@@ -41,24 +41,21 @@ public class ErmsActivator {
 \r
        //database validation status (create, update, validate ...)\r
        static DbSchemaValidation hbm2dll = DbSchemaValidation.CREATE;\r
-       static final Source ermsSource = PesiSources.PESI_ERMS();\r
-       static final ICdmDataSource cdmDestination = CdmDestinations.cdm_test_local_mysql_test();\r
-       static final UUID treeUuid = UUID.fromString("8bd27d84-fd4f-4bfa-bde0-3e6b7311b334");\r
-       static final UUID featureTreeUuid = UUID.fromString("33cbf7a8-0c47-4d47-bd11-b7d77a38d0f6");\r
-       //static final Object[] featureKeyList = new Integer[]{1,4,5,10,11,12,13,14, 249, 250, 251, 252, 253}; \r
+       static final Source ermsSource = PesiSources.PESI3_ERMS();\r
+//     static final ICdmDataSource cdmDestination = CdmDestinations.cdm_pesi_erms();\r
+       static final ICdmDataSource cdmDestination = CdmDestinations.cdm_test_local_mysql_erms();\r
+       static final UUID treeUuid = UUID.fromString("6fa988a9-10b7-48b0-a370-2586fbc066eb");\r
        \r
        //check - import\r
-       static final CHECK check = CHECK.CHECK_AND_IMPORT;\r
+       static final CHECK check = CHECK.IMPORT_WITHOUT_CHECK;\r
 \r
-       static final int partitionSize = 2000;\r
-\r
-\r
-       //NomeclaturalCode\r
-       static final NomenclaturalCode nomenclaturalCode = NomenclaturalCode.ICZN;\r
+       static final int partitionSize = 5000;\r
 \r
        //ignore null\r
        static final boolean ignoreNull = true;\r
        \r
+       static final boolean includeExport = true;\r
+       \r
 // ***************** ALL ************************************************//\r
        \r
        //references\r
@@ -86,38 +83,33 @@ public class ErmsActivator {
 //     \r
        \r
        \r
-       /**\r
-        * @param args\r
-        */\r
-       public static void main(String[] args) {\r
+       private void doImport(Source source, ICdmDataSource destination, DbSchemaValidation hbm2dll){\r
                System.out.println("Start import from ("+ ermsSource.getDatabase() + ") ...");\r
                \r
                //make ERMS Source\r
-               Source source = ermsSource;\r
-               ICdmDataSource destination = CdmDestinations.chooseDestination(args) != null ? CdmDestinations.chooseDestination(args) : cdmDestination;\r
                \r
-               ErmsImportConfigurator ermsImportConfigurator = ErmsImportConfigurator.NewInstance(source,  destination);\r
+               ErmsImportConfigurator config = ErmsImportConfigurator.NewInstance(source,  destination);\r
                \r
-               ermsImportConfigurator.setClassificationUuid(treeUuid);\r
-               ermsImportConfigurator.setNomenclaturalCode(nomenclaturalCode);\r
-\r
-               ermsImportConfigurator.setIgnoreNull(ignoreNull);\r
-               ermsImportConfigurator.setDoReferences(doReferences);\r
+               config.setClassificationUuid(treeUuid);\r
+               \r
+               config.setIgnoreNull(ignoreNull);\r
+               config.setDoReferences(doReferences);\r
                \r
-               ermsImportConfigurator.setDoTaxa(doTaxa);\r
-               ermsImportConfigurator.setDoRelTaxa(doRelTaxa);\r
-               ermsImportConfigurator.setDoLinks(doLinks);\r
-               ermsImportConfigurator.setDoOccurrence(doOccurences);\r
-               ermsImportConfigurator.setDbSchemaValidation(hbm2dll);\r
+               config.setDoTaxa(doTaxa);\r
+               config.setDoRelTaxa(doRelTaxa);\r
+               config.setDoLinks(doLinks);\r
+               config.setDoOccurrence(doOccurences);\r
+               config.setDbSchemaValidation(hbm2dll);\r
 \r
-               ermsImportConfigurator.setCheck(check);\r
-               ermsImportConfigurator.setRecordsPerTransaction(partitionSize);\r
+               config.setCheck(check);\r
+               config.setRecordsPerTransaction(partitionSize);\r
+               config.setSourceRefUuid(PesiTransformer.uuidSourceRefErms);\r
 \r
                // invoke import\r
                CdmDefaultImport<ErmsImportConfigurator> ermsImport = new CdmDefaultImport<ErmsImportConfigurator>();\r
-               ermsImport.invoke(ermsImportConfigurator);\r
+               ermsImport.invoke(config);\r
                \r
-               if (ermsImportConfigurator.getCheck().equals(CHECK.CHECK_AND_IMPORT)  || ermsImportConfigurator.getCheck().equals(CHECK.IMPORT_WITHOUT_CHECK)    ){\r
+               if (config.getCheck().equals(CHECK.CHECK_AND_IMPORT)  || config.getCheck().equals(CHECK.IMPORT_WITHOUT_CHECK)    ){\r
                        ICdmApplicationConfiguration app = ermsImport.getCdmAppController();\r
                        ISourceable obj = app.getCommonService().getSourcedObjectByIdInSource(ZoologicalName.class, "1000027", null);\r
                        logger.info(obj);\r
@@ -129,5 +121,19 @@ public class ErmsActivator {
                }\r
                System.out.println("End import from ("+ source.getDatabase() + ")...");\r
        }\r
+       \r
+       /**\r
+        * @param args\r
+        */\r
+       public static void main(String[] args) {\r
+               ICdmDataSource cdmDB = CdmDestinations.chooseDestination(args) != null ? CdmDestinations.chooseDestination(args) : cdmDestination;\r
+               ErmsActivator ermsImport = new ErmsActivator();\r
+               ermsImport.doImport(ermsSource, cdmDB, hbm2dll);\r
+               \r
+               if (includeExport){\r
+                       PesiExportActivatorERMS ermsExport = new PesiExportActivatorERMS();\r
+                       ermsExport.doExport(cdmDB);\r
+               }\r
+       }\r
 \r
 }\r