(no commit message)
authorAndreas Müller <a.mueller@bgbm.org>
Tue, 16 Jun 2009 17:41:23 +0000 (17:41 +0000)
committerAndreas Müller <a.mueller@bgbm.org>
Tue, 16 Jun 2009 17:41:23 +0000 (17:41 +0000)
app-import/src/main/java/eu/etaxonomy/cdm/app/berlinModelImport/SalvadorActivator.java
app-import/src/main/java/eu/etaxonomy/cdm/app/berlinModelImport/SalvadorExport.java

index eeb993062d473825066abd9bd4161c9945639bb6..eca0d8dce28fa61a91918546da79015573d9f8be 100644 (file)
@@ -18,11 +18,11 @@ import eu.etaxonomy.cdm.app.common.CdmDestinations;
 import eu.etaxonomy.cdm.database.DbSchemaValidation;\r
 import eu.etaxonomy.cdm.database.ICdmDataSource;\r
 import eu.etaxonomy.cdm.io.berlinModel.in.BerlinModelImportConfigurator;\r
-import eu.etaxonomy.cdm.io.common.IImportConfigurator.CHECK;\r
-import eu.etaxonomy.cdm.io.common.IImportConfigurator.DO_REFERENCES;\r
 import eu.etaxonomy.cdm.io.common.CdmDefaultImport;\r
+import eu.etaxonomy.cdm.io.common.IImportConfigurator;\r
 import eu.etaxonomy.cdm.io.common.Source;\r
-import eu.etaxonomy.cdm.model.name.NameRelationshipType;\r
+import eu.etaxonomy.cdm.io.common.IImportConfigurator.CHECK;\r
+import eu.etaxonomy.cdm.io.common.IImportConfigurator.DO_REFERENCES;\r
 import eu.etaxonomy.cdm.model.name.NomenclaturalCode;\r
 import eu.etaxonomy.cdm.model.name.NonViralName;\r
 \r
@@ -37,7 +37,6 @@ import eu.etaxonomy.cdm.model.name.NonViralName;
  *\r
  */\r
 public class SalvadorActivator {\r
-       @SuppressWarnings("unused")\r
        private static final Logger logger = Logger.getLogger(SalvadorActivator.class);\r
 \r
        //database validation status (create, update, validate ...)\r
@@ -54,10 +53,13 @@ public class SalvadorActivator {
        \r
        //check - import\r
        static final CHECK check = CHECK.CHECK_AND_IMPORT;\r
-\r
+       static final IImportConfigurator.EDITOR editor = IImportConfigurator.EDITOR.EDITOR_AS_EDITOR;\r
 \r
        //NomeclaturalCode\r
        static final NomenclaturalCode nomenclaturalCode  = NomenclaturalCode.ICBN;\r
+       \r
+       //ignore null\r
+       static final boolean ignoreNull = true;\r
 \r
 // ****************** ALL *****************************************\r
        \r
@@ -77,6 +79,11 @@ public class SalvadorActivator {
        static final boolean doRelTaxa = true;\r
        static final boolean doFacts = true;\r
        static final boolean doOccurences = false;\r
+       \r
+       //etc.\r
+       static final boolean doMarker = true;\r
+       static final boolean doUser = true;\r
+               \r
 \r
 // ************************ NONE **************************************** //\r
        \r
@@ -85,7 +92,7 @@ public class SalvadorActivator {
 //     //references\r
 //     static final DO_REFERENCES doReferences =  DO_REFERENCES.NONE;\r
 //     //names\r
-//     static final boolean doTaxonNames = true;\r
+//     static final boolean doTaxonNames = false;\r
 //     static final boolean doRelNames = false;\r
 //     static final boolean doNameStatus = false;\r
 //     static final boolean doTypes = false;\r
@@ -94,8 +101,12 @@ public class SalvadorActivator {
 //     //taxa\r
 //     static final boolean doTaxa = true;\r
 //     static final boolean doRelTaxa = false;\r
-//     static final boolean doFacts = true;\r
+//     static final boolean doFacts = false;\r
 //     static final boolean doOccurences = false;\r
+//     \r
+//     //etc.\r
+//     static final boolean doMarker = true;\r
+//     static final boolean doUser = true;     \r
        \r
        \r
        public boolean doImport(){\r
@@ -105,34 +116,41 @@ public class SalvadorActivator {
                Source source = berlinModelSource;\r
                ICdmDataSource destination = cdmDestination;\r
                \r
-               BerlinModelImportConfigurator bmImportConfigurator = BerlinModelImportConfigurator.NewInstance(source,  destination);\r
+               BerlinModelImportConfigurator config = BerlinModelImportConfigurator.NewInstance(source,  destination);\r
+               \r
+               config.setSecUuid(secUuid);\r
+               config.setSourceSecId(sourceSecId);\r
+               config.setNomenclaturalCode(nomenclaturalCode);\r
+               config.setIgnoreNull(ignoreNull);\r
+               \r
+               config.setDoAuthors(doAuthors);\r
+               config.setDoReferences(doReferences);\r
+               config.setDoTaxonNames(doTaxonNames);\r
+               config.setDoRelNames(doRelNames);\r
+               config.setDoNameStatus(doNameStatus);\r
+               config.setDoTypes(doTypes);\r
+               config.setDoNameFacts(doNameFacts);\r
                \r
-               bmImportConfigurator.setSecUuid(secUuid);\r
-               bmImportConfigurator.setSourceSecId(sourceSecId);\r
-               bmImportConfigurator.setNomenclaturalCode(nomenclaturalCode);\r
-\r
-               bmImportConfigurator.setDoAuthors(doAuthors);\r
-               bmImportConfigurator.setDoReferences(doReferences);\r
-               bmImportConfigurator.setDoTaxonNames(doTaxonNames);\r
-               bmImportConfigurator.setDoRelNames(doRelNames);\r
-               bmImportConfigurator.setDoNameStatus(doNameStatus);\r
-               bmImportConfigurator.setDoTypes(doTypes);\r
-               bmImportConfigurator.setDoNameFacts(doNameFacts);\r
+               config.setDoTaxa(doTaxa);\r
+               config.setDoRelTaxa(doRelTaxa);\r
+               config.setDoFacts(doFacts);\r
+               config.setDoOccurrence(doOccurences);\r
                \r
-               bmImportConfigurator.setDoTaxa(doTaxa);\r
-               bmImportConfigurator.setDoRelTaxa(doRelTaxa);\r
-               bmImportConfigurator.setDoFacts(doFacts);\r
-               bmImportConfigurator.setDoOccurrence(doOccurences);\r
-               bmImportConfigurator.setDbSchemaValidation(hbm2dll);\r
-\r
-               bmImportConfigurator.setCheck(check);\r
-               bmImportConfigurator.setIgnore0AuthorTeam(isIgnore0AuthorTeam);\r
+               config.setDoMarker(doMarker);\r
+               config.setDoUser(doUser);\r
+               \r
+               config.setDbSchemaValidation(hbm2dll);\r
+\r
+               config.setCheck(check);\r
+               config.setEditor(editor);\r
+               config.setIgnore0AuthorTeam(isIgnore0AuthorTeam);\r
                \r
-               bmImportConfigurator.setNamerelationshipTypeMethod(getNameRelationshipTypeMethod());\r
+               config.setNamerelationshipTypeMethod(getHandleNameRelationshipTypeMethod());\r
+               config.setUserTransformationMethod(getTransformUsernameMethod());\r
                \r
                // invoke import\r
                CdmDefaultImport<BerlinModelImportConfigurator> bmImport = new CdmDefaultImport<BerlinModelImportConfigurator>();\r
-               boolean result = bmImport.invoke(bmImportConfigurator);\r
+               boolean result = bmImport.invoke(config);\r
                System.out.println("End import from BerlinModel ("+ source.getDatabase() + ")...");\r
                return result;\r
        }\r
@@ -149,9 +167,9 @@ public class SalvadorActivator {
                        export.doExport();\r
                }\r
        }\r
+\r
        \r
-       \r
-       private Method getNameRelationshipTypeMethod(){\r
+       private Method getHandleNameRelationshipTypeMethod(){\r
                String methodName = "handleNameRelationshipType";\r
                try {\r
                        Method method = this.getClass().getDeclaredMethod(methodName, Integer.class, NonViralName.class, NonViralName.class);\r
@@ -162,8 +180,10 @@ public class SalvadorActivator {
                        return null;\r
                }\r
        }\r
-       \r
+\r
+\r
        //used by BerlinModelImportConfigurator\r
+       @SuppressWarnings("unused")\r
        private static boolean handleNameRelationshipType(Integer relQualifierFk, NonViralName nameTo, NonViralName nameFrom){\r
                if (relQualifierFk == 72){\r
                        nameTo.getHomotypicalGroup().merge(nameFrom.getHomotypicalGroup());\r
@@ -172,4 +192,27 @@ public class SalvadorActivator {
                return false;\r
        }\r
 \r
+       private Method getTransformUsernameMethod(){\r
+               String methodName = "transformUsername";\r
+               try {\r
+                       Method method = this.getClass().getDeclaredMethod(methodName, String.class);\r
+                       method.setAccessible(true);\r
+                       return method;\r
+               } catch (Exception e) {\r
+                       logger.error("Problem creating Method: " + methodName);\r
+                       return null;\r
+               }\r
+       }\r
+       \r
+       //used by BerlinModelImportConfigurator\r
+       @SuppressWarnings("unused")\r
+       private static String transformUsername(String nameToBeTransformed){\r
+               if ("W.G.Berendsohn".equals(nameToBeTransformed)){\r
+                       return "wgb";\r
+               }else if("XXXXERWE".equals(nameToBeTransformed)){\r
+                       return null;\r
+               }\r
+               return nameToBeTransformed;\r
+       }\r
+\r
 }\r
index c0594d60ed4eb2c39f11e59692b43a73f8dab387..23d0e62793275971bbfb3e159ccf4b0f06a3be5d 100644 (file)
@@ -21,6 +21,7 @@ import eu.etaxonomy.cdm.io.common.Source;
 import eu.etaxonomy.cdm.io.common.IExportConfigurator.CHECK;\r
 import eu.etaxonomy.cdm.io.common.IImportConfigurator.DO_REFERENCES;\r
 import eu.etaxonomy.cdm.model.name.NomenclaturalCode;\r
+import eu.etaxonomy.cdm.model.name.NonViralName;\r
 \r
 \r
 /**\r
@@ -121,10 +122,10 @@ public class SalvadorExport {
                CdmDefaultExport<BerlinModelExportConfigurator> bmExport = new CdmDefaultExport<BerlinModelExportConfigurator>();\r
                boolean result = bmExport.invoke(bmExportConfigurator);\r
                \r
-               System.out.println("End export to BerlinModel ("+ destination.getDatabase() + ")...");\r
+               System.out.println("End export to BerlinModel ("+ destination.getDatabase() + ")..." + (result? "(successful)":"(with errors)"));\r
                return result;\r
        }\r
-       \r
+\r
        \r
        \r
        /**\r
@@ -134,5 +135,8 @@ public class SalvadorExport {
                SalvadorExport ex = new SalvadorExport();\r
                ex.doExport();\r
        }\r
+       \r
+       \r
+       \r
 \r
 }\r