Fauna Europaea import: Misapplied names
[cdmlib.git] / app-import / src / main / java / eu / etaxonomy / cdm / app / faunaEuropaea / FaunaEuropaeaActivator.java
1 /**
2 * Copyright (C) 2007 EDIT
3 * European Distributed Institute of Taxonomy
4 * http://www.e-taxonomy.eu
5 *
6 * The contents of this file are subject to the Mozilla Public License Version 1.1
7 * See LICENSE.TXT at the top of this package for the full license terms.
8 */
9
10 package eu.etaxonomy.cdm.app.faunaEuropaea;
11
12 import java.util.UUID;
13
14 import org.apache.log4j.Logger;
15
16 import eu.etaxonomy.cdm.api.application.CdmApplicationController;
17 import eu.etaxonomy.cdm.app.berlinModelImport.TreeCreator;
18 import eu.etaxonomy.cdm.app.common.CdmDestinations;
19 import eu.etaxonomy.cdm.database.DbSchemaValidation;
20 import eu.etaxonomy.cdm.database.ICdmDataSource;
21 import eu.etaxonomy.cdm.io.common.IImportConfigurator.CHECK;
22 import eu.etaxonomy.cdm.io.common.IImportConfigurator.DO_REFERENCES;
23 import eu.etaxonomy.cdm.io.common.CdmDefaultImport;
24 import eu.etaxonomy.cdm.io.common.Source;
25 import eu.etaxonomy.cdm.io.faunaEuropaea.FaunaEuropaeaImportConfigurator;
26 import eu.etaxonomy.cdm.model.description.Feature;
27 import eu.etaxonomy.cdm.model.description.FeatureNode;
28 import eu.etaxonomy.cdm.model.description.FeatureTree;
29 import eu.etaxonomy.cdm.model.name.NomenclaturalCode;
30
31 /**
32 * @author a.babadshanjan
33 * @created 12.05.2009
34 */
35 public class FaunaEuropaeaActivator {
36 private static final Logger logger = Logger.getLogger(FaunaEuropaeaActivator.class);
37
38 static final Source faunaEuropaeaSource = FaunaEuropaeaSources.faunEu();
39 static final ICdmDataSource cdmDestination = CdmDestinations.cdm_test_anahit();
40
41 // static final CHECK check = CHECK.CHECK_AND_IMPORT;
42 static final CHECK check = CHECK.IMPORT_WITHOUT_CHECK;
43 // static DbSchemaValidation dbSchemaValidation = DbSchemaValidation.CREATE;
44 static DbSchemaValidation dbSchemaValidation = DbSchemaValidation.UPDATE;
45 // static DbSchemaValidation dbSchemaValidation = DbSchemaValidation.VALIDATE;
46 static final NomenclaturalCode nomenclaturalCode = NomenclaturalCode.ICZN;
47
48 // ****************** ALL *****************************************
49
50 static final int limitSave = 1000;
51
52 // static final boolean doAuthors = true;
53 // static final boolean doTaxa = true;
54 // static final boolean doBasionyms = true;
55 // static final boolean doTaxonomicallyIncluded = true;
56 // static final boolean doMisappliedNames = true;
57 // static final boolean doHeterotypicSynonyms = true;
58 // static final DO_REFERENCES doReferences = DO_REFERENCES.ALL;
59 // static final boolean doDistributions = true;
60 // static final boolean makeFeatureTree = true;
61
62 // ************************ NONE **************************************** //
63
64 static final boolean doAuthors = false;
65 static final boolean doTaxa = false;
66 static final boolean doBasionyms = false;
67 static final boolean doTaxonomicallyIncluded = false;
68 static final boolean doMisappliedNames = true;
69 static final boolean doHeterotypicSynonyms = false;
70 static final DO_REFERENCES doReferences = DO_REFERENCES.NONE;
71 static final boolean doDistributions = false;
72 static final boolean makeFeatureTree = false;
73
74
75 /**
76 * @param args
77 */
78 public static void main(String[] args) {
79 System.out.println("Start import from Fauna Europaea ("+ faunaEuropaeaSource.getDatabase() + ") ...");
80
81 ICdmDataSource destination = cdmDestination;
82
83 FaunaEuropaeaImportConfigurator fauEuImportConfigurator =
84 FaunaEuropaeaImportConfigurator.NewInstance(faunaEuropaeaSource, destination);
85
86 fauEuImportConfigurator.setDbSchemaValidation(dbSchemaValidation);
87 fauEuImportConfigurator.setNomenclaturalCode(nomenclaturalCode);
88 fauEuImportConfigurator.setCheck(check);
89
90 fauEuImportConfigurator.setDoAuthors(doAuthors);
91 fauEuImportConfigurator.setDoTaxa(doTaxa);
92 fauEuImportConfigurator.setDoReferences(doReferences);
93 fauEuImportConfigurator.setDoOccurrence(doDistributions);
94 fauEuImportConfigurator.setDoTaxonomicallyIncluded(doTaxonomicallyIncluded);
95 fauEuImportConfigurator.setDoBasionyms(doBasionyms);
96 fauEuImportConfigurator.setDoMisappliedNames(doMisappliedNames);
97 fauEuImportConfigurator.setDoHeterotypicSynonyms(doHeterotypicSynonyms);
98 fauEuImportConfigurator.setLimitSave(limitSave);
99
100 // invoke import
101 CdmDefaultImport<FaunaEuropaeaImportConfigurator> fauEuImport =
102 new CdmDefaultImport<FaunaEuropaeaImportConfigurator>();
103 fauEuImport.invoke(fauEuImportConfigurator);
104
105 //make feature tree
106
107 if (makeFeatureTree == true) {
108 FeatureTree featureTree = FeatureTree.NewInstance(UUID.fromString("ff59b9ad-1fb8-4aa4-a8ba-79d62123d0fb"));
109 FeatureNode root = featureTree.getRoot();
110
111 CdmApplicationController app = fauEuImport.getCdmAppController();
112 Feature citationFeature = (Feature)app.getTermService().getTermByUuid(UUID.fromString("99b2842f-9aa7-42fa-bd5f-7285311e0101"));
113 FeatureNode citationNode = FeatureNode.NewInstance(citationFeature);
114 root.addChild(citationNode);
115 Feature distributionFeature = (Feature)app.getTermService().getTermByUuid(UUID.fromString("9fc9d10c-ba50-49ee-b174-ce83fc3f80c6"));
116 FeatureNode distributionNode = FeatureNode.NewInstance(distributionFeature);
117 root.addChild(distributionNode);
118
119 app.getDescriptionService().saveFeatureTree(featureTree);
120 }
121
122 System.out.println("End import from Fauna Europaea ("+ faunaEuropaeaSource.getDatabase() + ")...");
123 }
124
125 }