Revision 81bba387
Added by Andreas Müller almost 12 years ago
.gitattributes | ||
---|---|---|
46 | 46 |
app-import/src/main/java/eu/etaxonomy/cdm/app/jaxb/CdmDiffActivator.java -text |
47 | 47 |
app-import/src/main/java/eu/etaxonomy/cdm/app/jaxb/JaxbExportActivator.java -text |
48 | 48 |
app-import/src/main/java/eu/etaxonomy/cdm/app/jaxb/JaxbImportActivator.java -text |
49 |
app-import/src/main/java/eu/etaxonomy/cdm/app/pesi/ErmsActivator.java -text |
|
50 |
app-import/src/main/java/eu/etaxonomy/cdm/app/pesi/EuroMedActivator.java -text |
|
51 |
app-import/src/main/java/eu/etaxonomy/cdm/app/pesi/FaunaEuropaeaActivator.java -text |
|
52 |
app-import/src/main/java/eu/etaxonomy/cdm/app/pesi/FaunaEuropaeaSources.java -text |
|
53 |
app-import/src/main/java/eu/etaxonomy/cdm/app/pesi/PesiDestinations.java -text |
|
54 |
app-import/src/main/java/eu/etaxonomy/cdm/app/pesi/PesiExportActivator.java -text |
|
55 |
app-import/src/main/java/eu/etaxonomy/cdm/app/pesi/erms/ErmsActivator.java -text |
|
56 |
app-import/src/main/java/eu/etaxonomy/cdm/app/pesi/merging/FaunaEuErmsFindIdenticalNamesActivator.java -text |
|
57 |
app-import/src/main/java/eu/etaxonomy/cdm/app/pesi/merging/FaunaEuErmsMergeActivator.java -text |
|
58 | 49 |
app-import/src/main/java/eu/etaxonomy/cdm/app/pilotOutputHtml/SimpleDescriptionOutput.java -text |
59 | 50 |
app-import/src/main/java/eu/etaxonomy/cdm/app/references/EndNoteImportActivator.java -text |
60 | 51 |
app-import/src/main/java/eu/etaxonomy/cdm/app/sdd/AnthuriumActivator.java -text |
app-import/src/main/java/eu/etaxonomy/cdm/app/berlinModelImport/AlgaTerraActivator.java | ||
---|---|---|
19 | 19 |
import eu.etaxonomy.cdm.database.ICdmDataSource; |
20 | 20 |
import eu.etaxonomy.cdm.io.berlinModel.in.BerlinModelImportConfigurator; |
21 | 21 |
import eu.etaxonomy.cdm.io.common.CdmDefaultImport; |
22 |
import eu.etaxonomy.cdm.io.common.Source; |
|
23 | 22 |
import eu.etaxonomy.cdm.io.common.IImportConfigurator.CHECK; |
24 | 23 |
import eu.etaxonomy.cdm.io.common.IImportConfigurator.DO_REFERENCES; |
25 |
import eu.etaxonomy.cdm.model.common.ISourceable;
|
|
24 |
import eu.etaxonomy.cdm.io.common.Source;
|
|
26 | 25 |
import eu.etaxonomy.cdm.model.description.Feature; |
27 | 26 |
import eu.etaxonomy.cdm.model.description.FeatureNode; |
28 | 27 |
import eu.etaxonomy.cdm.model.description.FeatureTree; |
29 | 28 |
import eu.etaxonomy.cdm.model.name.NomenclaturalCode; |
30 |
import eu.etaxonomy.cdm.model.name.ZoologicalName; |
|
31 | 29 |
|
32 | 30 |
|
33 | 31 |
/** |
app-import/src/main/java/eu/etaxonomy/cdm/app/berlinModelImport/CampanulaceaeActivator.java | ||
---|---|---|
13 | 13 |
|
14 | 14 |
import org.apache.log4j.Logger; |
15 | 15 |
|
16 |
import eu.etaxonomy.cdm.api.application.CdmApplicationController; |
|
17 | 16 |
import eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration; |
18 | 17 |
import eu.etaxonomy.cdm.app.common.CdmDestinations; |
18 |
import eu.etaxonomy.cdm.app.berlinModelImport.TreeCreator; |
|
19 | 19 |
import eu.etaxonomy.cdm.database.DbSchemaValidation; |
20 | 20 |
import eu.etaxonomy.cdm.database.ICdmDataSource; |
21 | 21 |
import eu.etaxonomy.cdm.io.berlinModel.in.BerlinModelImportConfigurator; |
app-import/src/main/java/eu/etaxonomy/cdm/app/berlinModelImport/IldisActivator.java | ||
---|---|---|
15 | 15 |
|
16 | 16 |
import eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration; |
17 | 17 |
import eu.etaxonomy.cdm.app.common.CdmDestinations; |
18 |
import eu.etaxonomy.cdm.app.pesi.FaunaEuropaeaActivator; |
|
19 | 18 |
import eu.etaxonomy.cdm.database.DbSchemaValidation; |
20 | 19 |
import eu.etaxonomy.cdm.database.ICdmDataSource; |
21 | 20 |
import eu.etaxonomy.cdm.io.berlinModel.in.BerlinModelImportConfigurator; |
... | ... | |
36 | 35 |
*/ |
37 | 36 |
public class IldisActivator { |
38 | 37 |
@SuppressWarnings("unused") |
39 |
private static final Logger logger = Logger.getLogger(FaunaEuropaeaActivator.class);
|
|
38 |
private static final Logger logger = Logger.getLogger(IldisActivator.class);
|
|
40 | 39 |
//database validation status (create, update, validate ...) |
41 | 40 |
static DbSchemaValidation hbm2dll = DbSchemaValidation.CREATE; |
42 | 41 |
static final Source berlinModelSource = BerlinModelSources.ILDIS(); |
app-import/src/main/java/eu/etaxonomy/cdm/app/berlinModelImport/SalvadorActivator.java | ||
---|---|---|
14 | 14 |
|
15 | 15 |
import org.apache.log4j.Logger; |
16 | 16 |
|
17 |
import eu.etaxonomy.cdm.app.berlinModelImport.BerlinModelSources; |
|
17 | 18 |
import eu.etaxonomy.cdm.app.common.CdmDestinations; |
18 | 19 |
import eu.etaxonomy.cdm.database.DbSchemaValidation; |
19 | 20 |
import eu.etaxonomy.cdm.database.ICdmDataSource; |
app-import/src/main/java/eu/etaxonomy/cdm/app/berlinModelImport/TreeCreator.java | ||
---|---|---|
15 | 15 |
|
16 | 16 |
import org.apache.log4j.Logger; |
17 | 17 |
|
18 |
import eu.etaxonomy.cdm.app.berlinModelImport.TreeCreator; |
|
18 | 19 |
import eu.etaxonomy.cdm.model.description.Feature; |
19 | 20 |
import eu.etaxonomy.cdm.model.description.FeatureNode; |
20 | 21 |
import eu.etaxonomy.cdm.model.description.FeatureTree; |
app-import/src/main/java/eu/etaxonomy/cdm/app/pesi/ErmsActivator.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.pesi; |
|
11 |
|
|
12 |
import java.util.UUID; |
|
13 |
|
|
14 |
import org.apache.log4j.Logger; |
|
15 |
|
|
16 |
import eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration; |
|
17 |
import eu.etaxonomy.cdm.app.common.CdmDestinations; |
|
18 |
import eu.etaxonomy.cdm.database.DbSchemaValidation; |
|
19 |
import eu.etaxonomy.cdm.database.ICdmDataSource; |
|
20 |
import eu.etaxonomy.cdm.io.berlinModel.in.BerlinModelImportConfigurator; |
|
21 |
import eu.etaxonomy.cdm.io.common.CdmDefaultImport; |
|
22 |
import eu.etaxonomy.cdm.io.common.IImportConfigurator.CHECK; |
|
23 |
import eu.etaxonomy.cdm.io.common.IImportConfigurator.DO_REFERENCES; |
|
24 |
import eu.etaxonomy.cdm.io.common.Source; |
|
25 |
import eu.etaxonomy.cdm.model.common.ISourceable; |
|
26 |
import eu.etaxonomy.cdm.model.name.NomenclaturalCode; |
|
27 |
import eu.etaxonomy.cdm.model.name.ZoologicalName; |
|
28 |
|
|
29 |
|
|
30 |
/** |
|
31 |
* TODO add the following to a wiki page: |
|
32 |
* HINT: If you are about to import into a mysql data base running under windows and if you wish to dump and restore the resulting data base under another operation systen |
|
33 |
* you must set the mysql system variable lower_case_table_names = 0 in order to create data base with table compatible names. |
|
34 |
* |
|
35 |
* |
|
36 |
* @author a.mueller |
|
37 |
* |
|
38 |
*/ |
|
39 |
public class ErmsActivator { |
|
40 |
private static final Logger logger = Logger.getLogger(ErmsActivator.class); |
|
41 |
|
|
42 |
//database validation status (create, update, validate ...) |
|
43 |
static DbSchemaValidation hbm2dll = DbSchemaValidation.CREATE; |
|
44 |
static final Source berlinModelSource = FaunaEuropaeaSources.PESI_ERMS(); |
|
45 |
static final ICdmDataSource cdmDestination = CdmDestinations.cdm_pesi_erms(); |
|
46 |
static final UUID treeUuid = UUID.fromString("8bd27d84-fd4f-4bfa-bde0-3e6b7311b334"); |
|
47 |
static final int sourceSecId = 500000; |
|
48 |
static final UUID featureTreeUuid = UUID.fromString("33cbf7a8-0c47-4d47-bd11-b7d77a38d0f6"); |
|
49 |
static final Object[] featureKeyList = new Integer[]{1,4,5,10,11,12,13,14, 249, 250, 251, 252, 253}; |
|
50 |
|
|
51 |
//check - import |
|
52 |
static final CHECK check = CHECK.CHECK_AND_IMPORT; |
|
53 |
|
|
54 |
|
|
55 |
//NomeclaturalCode |
|
56 |
static final NomenclaturalCode nomenclaturalCode = NomenclaturalCode.ICZN; |
|
57 |
|
|
58 |
//ignore null |
|
59 |
static final boolean ignoreNull = true; |
|
60 |
|
|
61 |
// ***************** ALL ************************************************// |
|
62 |
|
|
63 |
//authors |
|
64 |
static final boolean doAuthors = true; |
|
65 |
//references |
|
66 |
static final DO_REFERENCES doReferences = DO_REFERENCES.CONCEPT_REFERENCES; |
|
67 |
//names |
|
68 |
static final boolean doTaxonNames = false; |
|
69 |
static final boolean doRelNames = true; |
|
70 |
static final boolean doNameStatus = true; |
|
71 |
static final boolean doTypes = true; |
|
72 |
static final boolean doNameFacts = true; |
|
73 |
|
|
74 |
//taxa |
|
75 |
static final boolean doTaxa = true; |
|
76 |
static final boolean doRelTaxa = true; |
|
77 |
static final boolean doFacts = true; |
|
78 |
static final boolean doOccurences = false; |
|
79 |
|
|
80 |
|
|
81 |
//******************** NONE ***************************************// |
|
82 |
|
|
83 |
// //authors |
|
84 |
// static final boolean doAuthors = true; |
|
85 |
// //references |
|
86 |
// static final DO_REFERENCES doReferences = DO_REFERENCES.NONE; |
|
87 |
// //names |
|
88 |
// static final boolean doTaxonNames = false; |
|
89 |
// static final boolean doRelNames = false; |
|
90 |
// static final boolean doNameStatus = false; |
|
91 |
// static final boolean doTypes = false; |
|
92 |
// static final boolean doNameFacts = false; |
|
93 |
// |
|
94 |
// //taxa |
|
95 |
// static final boolean doTaxa = true; |
|
96 |
// static final boolean doRelTaxa = false; |
|
97 |
// static final boolean doFacts = false; |
|
98 |
// static final boolean doOccurences = false; |
|
99 |
// |
|
100 |
|
|
101 |
|
|
102 |
/** |
|
103 |
* @param args |
|
104 |
*/ |
|
105 |
public static void main(String[] args) { |
|
106 |
System.out.println("Start import from BerlinModel("+ berlinModelSource.getDatabase() + ") ..."); |
|
107 |
|
|
108 |
//make BerlinModel Source |
|
109 |
Source source = berlinModelSource; |
|
110 |
ICdmDataSource destination = CdmDestinations.chooseDestination(args) != null ? CdmDestinations.chooseDestination(args) : cdmDestination; |
|
111 |
|
|
112 |
BerlinModelImportConfigurator bmImportConfigurator = BerlinModelImportConfigurator.NewInstance(source, destination); |
|
113 |
|
|
114 |
bmImportConfigurator.setClassificationUuid(treeUuid); |
|
115 |
bmImportConfigurator.setSourceSecId(sourceSecId); |
|
116 |
bmImportConfigurator.setNomenclaturalCode(nomenclaturalCode); |
|
117 |
|
|
118 |
bmImportConfigurator.setIgnoreNull(ignoreNull); |
|
119 |
bmImportConfigurator.setDoAuthors(doAuthors); |
|
120 |
bmImportConfigurator.setDoReferences(doReferences); |
|
121 |
bmImportConfigurator.setDoTaxonNames(doTaxonNames); |
|
122 |
bmImportConfigurator.setDoRelNames(doRelNames); |
|
123 |
bmImportConfigurator.setDoNameStatus(doNameStatus); |
|
124 |
bmImportConfigurator.setDoTypes(doTypes); |
|
125 |
bmImportConfigurator.setDoNameFacts(doNameFacts); |
|
126 |
|
|
127 |
bmImportConfigurator.setDoTaxa(doTaxa); |
|
128 |
bmImportConfigurator.setDoRelTaxa(doRelTaxa); |
|
129 |
bmImportConfigurator.setDoFacts(doFacts); |
|
130 |
bmImportConfigurator.setDoOccurrence(doOccurences); |
|
131 |
bmImportConfigurator.setDbSchemaValidation(hbm2dll); |
|
132 |
|
|
133 |
bmImportConfigurator.setCheck(check); |
|
134 |
|
|
135 |
// invoke import |
|
136 |
CdmDefaultImport<BerlinModelImportConfigurator> bmImport = new CdmDefaultImport<BerlinModelImportConfigurator>(); |
|
137 |
bmImport.invoke(bmImportConfigurator); |
|
138 |
|
|
139 |
if (bmImportConfigurator.getCheck().equals(CHECK.CHECK_AND_IMPORT) || bmImportConfigurator.getCheck().equals(CHECK.IMPORT_WITHOUT_CHECK) ){ |
|
140 |
ICdmApplicationConfiguration app = bmImport.getCdmAppController(); |
|
141 |
ISourceable obj = app.getCommonService().getSourcedObjectByIdInSource(ZoologicalName.class, "1000027", null); |
|
142 |
logger.info(obj); |
|
143 |
|
|
144 |
// //make feature tree |
|
145 |
// FeatureTree tree = TreeCreator.flatTree(featureTreeUuid, bmImportConfigurator.getFeatureMap(), featureKeyList); |
|
146 |
// app = bmImport.getCdmAppController(); |
|
147 |
// app.getFeatureTreeService().saveOrUpdate(tree); |
|
148 |
} |
|
149 |
System.out.println("End import from BerlinModel ("+ source.getDatabase() + ")..."); |
|
150 |
} |
|
151 |
|
|
152 |
} |
app-import/src/main/java/eu/etaxonomy/cdm/app/pesi/EuroMedActivator.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.pesi; |
|
11 |
|
|
12 |
import java.util.UUID; |
|
13 |
|
|
14 |
import org.apache.log4j.Logger; |
|
15 |
|
|
16 |
import eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration; |
|
17 |
import eu.etaxonomy.cdm.app.berlinModelImport.BerlinModelSources; |
|
18 |
import eu.etaxonomy.cdm.app.berlinModelImport.TreeCreator; |
|
19 |
import eu.etaxonomy.cdm.app.common.CdmDestinations; |
|
20 |
import eu.etaxonomy.cdm.database.DbSchemaValidation; |
|
21 |
import eu.etaxonomy.cdm.database.ICdmDataSource; |
|
22 |
import eu.etaxonomy.cdm.io.berlinModel.in.BerlinModelImportConfigurator; |
|
23 |
import eu.etaxonomy.cdm.io.common.CdmDefaultImport; |
|
24 |
import eu.etaxonomy.cdm.io.common.IImportConfigurator.CHECK; |
|
25 |
import eu.etaxonomy.cdm.io.common.IImportConfigurator.DO_REFERENCES; |
|
26 |
import eu.etaxonomy.cdm.io.common.IImportConfigurator.EDITOR; |
|
27 |
import eu.etaxonomy.cdm.io.common.Source; |
|
28 |
import eu.etaxonomy.cdm.model.description.Feature; |
|
29 |
import eu.etaxonomy.cdm.model.description.FeatureNode; |
|
30 |
import eu.etaxonomy.cdm.model.description.FeatureTree; |
|
31 |
import eu.etaxonomy.cdm.model.name.NomenclaturalCode; |
|
32 |
|
|
33 |
|
|
34 |
/** |
|
35 |
* TODO add the following to a wiki page: |
|
36 |
* HINT: If you are about to import into a mysql data base running under windows and if you wish to dump and restore the resulting data bas under another operation systen |
|
37 |
* you must set the mysql system variable lower_case_table_names = 0 in order to create data base with table compatible names. |
|
38 |
* |
|
39 |
* |
|
40 |
* @author a.mueller |
|
41 |
* |
|
42 |
*/ |
|
43 |
public class EuroMedActivator { |
|
44 |
@SuppressWarnings("unused") |
|
45 |
private static final Logger logger = Logger.getLogger(EuroMedActivator.class); |
|
46 |
|
|
47 |
//database validation status (create, update, validate ...) |
|
48 |
static DbSchemaValidation hbm2dll = DbSchemaValidation.CREATE; |
|
49 |
// static final Source berlinModelSource = BerlinModelSources.euroMed(); |
|
50 |
static final Source berlinModelSource = BerlinModelSources.EDIT_CICHORIEAE(); |
|
51 |
// static final Source berlinModelSource = BerlinModelSources.EDIT_Diptera(); |
|
52 |
|
|
53 |
static final ICdmDataSource cdmDestination = CdmDestinations.cdm_test_andreasM(); |
|
54 |
static final int sourceSecId = 7000000; //500000 |
|
55 |
|
|
56 |
static final UUID classificationUuid = UUID.fromString("314a68f9-8449-495a-91c2-92fde8bcf344"); |
|
57 |
|
|
58 |
static final UUID featureTreeUuid = UUID.fromString("6a5e1c2b-ec0d-46c8-9c7d-a2059267ffb7"); |
|
59 |
static final Object[] featureKeyList = new Integer[]{1, 31, 4, 98, 41}; |
|
60 |
|
|
61 |
// set to zero for unlimited nameFacts |
|
62 |
static final int maximumNumberOfNameFacts = 0; |
|
63 |
|
|
64 |
static final int partitionSize = 2000; |
|
65 |
|
|
66 |
//check - import |
|
67 |
static final CHECK check = CHECK.CHECK_AND_IMPORT; |
|
68 |
|
|
69 |
//editor - import |
|
70 |
static final EDITOR editor = EDITOR.EDITOR_AS_EDITOR; |
|
71 |
|
|
72 |
//NomeclaturalCode |
|
73 |
static final NomenclaturalCode nomenclaturalCode = NomenclaturalCode.ICBN; |
|
74 |
|
|
75 |
//ignore null |
|
76 |
static final boolean ignoreNull = true; |
|
77 |
|
|
78 |
static boolean useClassification = true; |
|
79 |
|
|
80 |
|
|
81 |
// **************** ALL ********************* |
|
82 |
// |
|
83 |
static final boolean doUser = true; |
|
84 |
//authors |
|
85 |
static final boolean doAuthors = true; |
|
86 |
//references |
|
87 |
static final DO_REFERENCES doReferences = DO_REFERENCES.ALL; |
|
88 |
//names |
|
89 |
static final boolean doTaxonNames = true; |
|
90 |
static final boolean doRelNames = true; |
|
91 |
static final boolean doNameStatus = true; |
|
92 |
static final boolean doTypes = true; |
|
93 |
static final boolean doNameFacts = true; |
|
94 |
|
|
95 |
//taxa |
|
96 |
static final boolean doTaxa = true; |
|
97 |
static final boolean doRelTaxa = true; |
|
98 |
static final boolean doFacts = true; |
|
99 |
static final boolean doOccurences = true; |
|
100 |
static final boolean doCommonNames = true; |
|
101 |
|
|
102 |
//etc. |
|
103 |
static final boolean doMarker = true; |
|
104 |
|
|
105 |
|
|
106 |
// **************** SELECTED ********************* |
|
107 |
|
|
108 |
// static final boolean doUser = true; |
|
109 |
// //authors |
|
110 |
// static final boolean doAuthors = false; |
|
111 |
// //references |
|
112 |
// static final DO_REFERENCES doReferences = DO_REFERENCES.NONE; |
|
113 |
// //names |
|
114 |
// static final boolean doTaxonNames = false; |
|
115 |
// static final boolean doRelNames = false; |
|
116 |
// static final boolean doNameStatus = false; |
|
117 |
// static final boolean doTypes = false; |
|
118 |
// static final boolean doNameFacts = false; |
|
119 |
// |
|
120 |
// //taxa |
|
121 |
// static final boolean doTaxa = false; |
|
122 |
// static final boolean doRelTaxa = false; |
|
123 |
// static final boolean doFacts = false; |
|
124 |
// static final boolean doOccurences = false; |
|
125 |
// |
|
126 |
// //etc. |
|
127 |
// static final boolean doMarker = false; |
|
128 |
|
|
129 |
|
|
130 |
/** |
|
131 |
* @param args |
|
132 |
*/ |
|
133 |
public static void main(String[] args) { |
|
134 |
System.out.println("Start import from BerlinModel("+ berlinModelSource.getDatabase() + ") to " + cdmDestination.getDatabase() + " ..."); |
|
135 |
|
|
136 |
//make BerlinModel Source |
|
137 |
Source source = berlinModelSource; |
|
138 |
ICdmDataSource destination = CdmDestinations.chooseDestination(args) != null ? CdmDestinations.chooseDestination(args) : cdmDestination; |
|
139 |
|
|
140 |
BerlinModelImportConfigurator bmImportConfigurator = BerlinModelImportConfigurator.NewInstance(source, destination); |
|
141 |
|
|
142 |
bmImportConfigurator.setClassificationUuid(classificationUuid); |
|
143 |
bmImportConfigurator.setSourceSecId(sourceSecId); |
|
144 |
|
|
145 |
bmImportConfigurator.setNomenclaturalCode(nomenclaturalCode); |
|
146 |
|
|
147 |
bmImportConfigurator.setIgnoreNull(ignoreNull); |
|
148 |
bmImportConfigurator.setDoAuthors(doAuthors); |
|
149 |
bmImportConfigurator.setDoReferences(doReferences); |
|
150 |
bmImportConfigurator.setDoTaxonNames(doTaxonNames); |
|
151 |
bmImportConfigurator.setDoRelNames(doRelNames); |
|
152 |
bmImportConfigurator.setDoNameStatus(doNameStatus); |
|
153 |
bmImportConfigurator.setDoTypes(doTypes); |
|
154 |
bmImportConfigurator.setDoNameFacts(doNameFacts); |
|
155 |
bmImportConfigurator.setUseClassification(useClassification); |
|
156 |
|
|
157 |
bmImportConfigurator.setDoTaxa(doTaxa); |
|
158 |
bmImportConfigurator.setDoRelTaxa(doRelTaxa); |
|
159 |
bmImportConfigurator.setDoFacts(doFacts); |
|
160 |
bmImportConfigurator.setDoOccurrence(doOccurences); |
|
161 |
bmImportConfigurator.setDoCommonNames(doCommonNames); |
|
162 |
|
|
163 |
bmImportConfigurator.setDoMarker(doMarker); |
|
164 |
bmImportConfigurator.setDoUser(doUser); |
|
165 |
bmImportConfigurator.setEditor(editor); |
|
166 |
bmImportConfigurator.setDbSchemaValidation(hbm2dll); |
|
167 |
|
|
168 |
// maximum number of name facts to import |
|
169 |
bmImportConfigurator.setMaximumNumberOfNameFacts(maximumNumberOfNameFacts); |
|
170 |
|
|
171 |
bmImportConfigurator.setCheck(check); |
|
172 |
bmImportConfigurator.setEditor(editor); |
|
173 |
bmImportConfigurator.setRecordsPerTransaction(partitionSize); |
|
174 |
|
|
175 |
// invoke import |
|
176 |
CdmDefaultImport<BerlinModelImportConfigurator> bmImport = new CdmDefaultImport<BerlinModelImportConfigurator>(); |
|
177 |
bmImport.invoke(bmImportConfigurator); |
|
178 |
|
|
179 |
if (doFacts && bmImportConfigurator.getCheck().equals(CHECK.CHECK_AND_IMPORT) || bmImportConfigurator.getCheck().equals(CHECK.IMPORT_WITHOUT_CHECK) ){ |
|
180 |
ICdmApplicationConfiguration app = bmImport.getCdmAppController(); |
|
181 |
|
|
182 |
//make feature tree |
|
183 |
FeatureTree tree = TreeCreator.flatTree(featureTreeUuid, bmImportConfigurator.getFeatureMap(), featureKeyList); |
|
184 |
FeatureNode imageNode = FeatureNode.NewInstance(Feature.IMAGE()); |
|
185 |
tree.getRoot().addChild(imageNode); |
|
186 |
FeatureNode distributionNode = FeatureNode.NewInstance(Feature.DISTRIBUTION()); |
|
187 |
tree.getRoot().addChild(distributionNode, 2); |
|
188 |
app.getFeatureTreeService().saveOrUpdate(tree); |
|
189 |
} |
|
190 |
|
|
191 |
System.out.println("End import from BerlinModel ("+ source.getDatabase() + ")..."); |
|
192 |
|
|
193 |
} |
|
194 |
|
|
195 |
} |
app-import/src/main/java/eu/etaxonomy/cdm/app/pesi/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.pesi; |
|
11 |
|
|
12 |
import java.util.UUID; |
|
13 |
|
|
14 |
import org.apache.log4j.Logger; |
|
15 |
|
|
16 |
import eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration; |
|
17 |
import eu.etaxonomy.cdm.app.common.CdmDestinations; |
|
18 |
import eu.etaxonomy.cdm.database.DbSchemaValidation; |
|
19 |
import eu.etaxonomy.cdm.database.ICdmDataSource; |
|
20 |
import eu.etaxonomy.cdm.io.common.CdmDefaultImport; |
|
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.Source; |
|
24 |
import eu.etaxonomy.cdm.io.pesi.faunaEuropaea.FaunaEuropaeaImportConfigurator; |
|
25 |
import eu.etaxonomy.cdm.model.description.Feature; |
|
26 |
import eu.etaxonomy.cdm.model.description.FeatureNode; |
|
27 |
import eu.etaxonomy.cdm.model.description.FeatureTree; |
|
28 |
import eu.etaxonomy.cdm.model.name.NomenclaturalCode; |
|
29 |
|
|
30 |
/** |
|
31 |
* @author a.babadshanjan |
|
32 |
* @created 12.05.2009 |
|
33 |
*/ |
|
34 |
public class FaunaEuropaeaActivator { |
|
35 |
@SuppressWarnings("unused") |
|
36 |
private static final Logger logger = Logger.getLogger(FaunaEuropaeaActivator.class); |
|
37 |
|
|
38 |
static final Source faunaEuropaeaSource = FaunaEuropaeaSources.faunaEu_1_3(); |
|
39 |
static final ICdmDataSource cdmDestination = CdmDestinations.cdm_test_andreasM(); |
|
40 |
|
|
41 |
static final int limitSave = 2000; |
|
42 |
|
|
43 |
// static final CHECK check = CHECK.CHECK_AND_IMPORT; |
|
44 |
static final CHECK check = CHECK.IMPORT_WITHOUT_CHECK; |
|
45 |
static DbSchemaValidation dbSchemaValidation = DbSchemaValidation.CREATE; |
|
46 |
// static DbSchemaValidation dbSchemaValidation = DbSchemaValidation.UPDATE; |
|
47 |
// static DbSchemaValidation dbSchemaValidation = DbSchemaValidation.VALIDATE; |
|
48 |
static final NomenclaturalCode nomenclaturalCode = NomenclaturalCode.ICZN; |
|
49 |
|
|
50 |
// ****************** ALL ***************************************** |
|
51 |
|
|
52 |
// Fauna Europaea to CDM import |
|
53 |
static final boolean doAuthors = true; |
|
54 |
static final boolean doTaxa = true; |
|
55 |
static final boolean doBasionyms = true; |
|
56 |
static final boolean doTaxonomicallyIncluded = true; |
|
57 |
static final boolean doMisappliedNames = true; |
|
58 |
static final boolean doHeterotypicSynonyms = true; |
|
59 |
static final DO_REFERENCES doReferences = DO_REFERENCES.ALL; |
|
60 |
static final boolean doDistributions = true; |
|
61 |
static final boolean makeFeatureTree = true; |
|
62 |
// CDM to CDM import |
|
63 |
static final boolean doHeterotypicSynonymsForBasionyms = true; |
|
64 |
|
|
65 |
// ************************ NONE **************************************** // |
|
66 |
|
|
67 |
// Fauna Europaea to CDM import |
|
68 |
// static final boolean doAuthors = false; |
|
69 |
// static final boolean doTaxa = false; |
|
70 |
// static final boolean doBasionyms = false; |
|
71 |
// static final boolean doTaxonomicallyIncluded = false; |
|
72 |
// static final boolean doMisappliedNames = false; |
|
73 |
// static final boolean doHeterotypicSynonyms = false; |
|
74 |
// static final DO_REFERENCES doReferences = DO_REFERENCES.NONE; |
|
75 |
// static final boolean doDistributions = false; |
|
76 |
// static final boolean makeFeatureTree = false; |
|
77 |
// // CDM to CDM import |
|
78 |
// static final boolean doHeterotypicSynonymsForBasionyms = false; |
|
79 |
|
|
80 |
|
|
81 |
/** |
|
82 |
* @param args |
|
83 |
*/ |
|
84 |
public static void main(String[] args) { |
|
85 |
|
|
86 |
ICdmDataSource destination = cdmDestination; |
|
87 |
System.out.println("Starting import from Fauna Europaea (" + faunaEuropaeaSource.getDatabase() + ") to CDM (" + destination.getDatabase() + ")..."); |
|
88 |
|
|
89 |
// invoke Fauna Europaea to CDM import |
|
90 |
|
|
91 |
FaunaEuropaeaImportConfigurator fauEuImportConfigurator = |
|
92 |
FaunaEuropaeaImportConfigurator.NewInstance(faunaEuropaeaSource, destination); |
|
93 |
|
|
94 |
fauEuImportConfigurator.setDbSchemaValidation(dbSchemaValidation); |
|
95 |
fauEuImportConfigurator.setNomenclaturalCode(nomenclaturalCode); |
|
96 |
fauEuImportConfigurator.setCheck(check); |
|
97 |
|
|
98 |
fauEuImportConfigurator.setDoAuthors(doAuthors); |
|
99 |
fauEuImportConfigurator.setDoTaxa(doTaxa); |
|
100 |
fauEuImportConfigurator.setDoReferences(doReferences); |
|
101 |
fauEuImportConfigurator.setDoOccurrence(doDistributions); |
|
102 |
fauEuImportConfigurator.setDoTaxonomicallyIncluded(doTaxonomicallyIncluded); |
|
103 |
fauEuImportConfigurator.setDoBasionyms(doBasionyms); |
|
104 |
fauEuImportConfigurator.setDoMisappliedNames(doMisappliedNames); |
|
105 |
fauEuImportConfigurator.setDoHeterotypicSynonyms(doHeterotypicSynonyms); |
|
106 |
fauEuImportConfigurator.setDoHeterotypicSynonymsForBasionyms(doHeterotypicSynonymsForBasionyms); |
|
107 |
|
|
108 |
CdmDefaultImport<FaunaEuropaeaImportConfigurator> fauEuImport = |
|
109 |
new CdmDefaultImport<FaunaEuropaeaImportConfigurator>(); |
|
110 |
try { |
|
111 |
fauEuImport.invoke(fauEuImportConfigurator); |
|
112 |
} catch (Exception e) { |
|
113 |
System.out.println("ERROR in Fauna Europaea to CDM import"); |
|
114 |
e.printStackTrace(); |
|
115 |
} |
|
116 |
|
|
117 |
// invoke CDM to CDM import |
|
118 |
|
|
119 |
// System.out.println("Starting import from CDM to CDM (" + destination.getDatabase() + ")..."); |
|
120 |
// |
|
121 |
// CdmImportConfigurator cdmImportConfigurator = |
|
122 |
// CdmImportConfigurator.NewInstance(destination, destination); |
|
123 |
// |
|
124 |
// cdmImportConfigurator.setDbSchemaValidation(DbSchemaValidation.VALIDATE); |
|
125 |
// cdmImportConfigurator.setNomenclaturalCode(nomenclaturalCode); |
|
126 |
// cdmImportConfigurator.setCheck(check); |
|
127 |
// |
|
128 |
// cdmImportConfigurator.setDoHeterotypicSynonymsForBasionyms(doHeterotypicSynonymsForBasionyms); |
|
129 |
// cdmImportConfigurator.setDoAuthors(false); |
|
130 |
// cdmImportConfigurator.setDoTaxa(false); |
|
131 |
// cdmImportConfigurator.setDoReferences(DO_REFERENCES.NONE); |
|
132 |
// cdmImportConfigurator.setDoOccurrence(false); |
|
133 |
// cdmImportConfigurator.setLimitSave(limitSave); |
|
134 |
// |
|
135 |
// CdmDefaultImport<CdmImportConfigurator> cdmImport = |
|
136 |
// new CdmDefaultImport<CdmImportConfigurator>(); |
|
137 |
// try { |
|
138 |
// cdmImport.invoke(cdmImportConfigurator); |
|
139 |
// } catch (Exception e) { |
|
140 |
// System.out.println("ERROR in CDM to CDM import"); |
|
141 |
// e.printStackTrace(); |
|
142 |
// } |
|
143 |
|
|
144 |
//make feature tree |
|
145 |
|
|
146 |
if (makeFeatureTree == true) { |
|
147 |
FeatureTree featureTree = FeatureTree.NewInstance(UUID.fromString("ff59b9ad-1fb8-4aa4-a8ba-79d62123d0fb")); |
|
148 |
FeatureNode root = featureTree.getRoot(); |
|
149 |
|
|
150 |
ICdmApplicationConfiguration app = fauEuImport.getCdmAppController(); |
|
151 |
Feature citationFeature = (Feature)app.getTermService().find(UUID.fromString("99b2842f-9aa7-42fa-bd5f-7285311e0101")); |
|
152 |
FeatureNode citationNode = FeatureNode.NewInstance(citationFeature); |
|
153 |
root.addChild(citationNode); |
|
154 |
Feature distributionFeature = (Feature)app.getTermService().find(UUID.fromString("9fc9d10c-ba50-49ee-b174-ce83fc3f80c6")); |
|
155 |
FeatureNode distributionNode = FeatureNode.NewInstance(distributionFeature); |
|
156 |
root.addChild(distributionNode); |
|
157 |
|
|
158 |
app.getFeatureTreeService().saveOrUpdate(featureTree); |
|
159 |
} |
|
160 |
|
|
161 |
System.out.println("End importing Fauna Europaea data"); |
|
162 |
} |
|
163 |
|
|
164 |
} |
app-import/src/main/java/eu/etaxonomy/cdm/app/pesi/FaunaEuropaeaSources.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.pesi; |
|
11 |
|
|
12 |
import org.apache.log4j.Logger; |
|
13 |
|
|
14 |
import eu.etaxonomy.cdm.app.common.ImportUtils; |
|
15 |
import eu.etaxonomy.cdm.common.AccountStore; |
|
16 |
import eu.etaxonomy.cdm.io.common.Source; |
|
17 |
|
|
18 |
/** |
|
19 |
* @author a.babadshanjan |
|
20 |
* @created 12.05.2009 |
|
21 |
*/ |
|
22 |
public class FaunaEuropaeaSources { |
|
23 |
@SuppressWarnings("unused") |
|
24 |
private static final Logger logger = Logger.getLogger(FaunaEuropaeaSources.class); |
|
25 |
|
|
26 |
public static Source faunEu(){ |
|
27 |
// Fauna Europaea |
|
28 |
|
|
29 |
String dbms = Source.SQL_SERVER_2008; |
|
30 |
|
|
31 |
String strServer = "BGBM42"; // "192.168.1.36"; |
|
32 |
|
|
33 |
String strDB = "FaunEu"; |
|
34 |
int port = 1433; |
|
35 |
String userName = "WebUser"; |
|
36 |
return ImportUtils.makeSource(dbms, strServer, strDB, port, userName, null); |
|
37 |
} |
|
38 |
|
|
39 |
public static Source faunaEu_1_3(){ |
|
40 |
// Fauna Europaea |
|
41 |
|
|
42 |
String dbms = Source.SQL_SERVER_2008; |
|
43 |
|
|
44 |
String strServer = "BGBM42"; // "192.168.1.36"; |
|
45 |
|
|
46 |
String strDB = "FaunaEu_1_3"; |
|
47 |
int port = 1433; |
|
48 |
String userName = "WebUser"; |
|
49 |
return ImportUtils.makeSource(dbms, strServer, strDB, port, userName, null); |
|
50 |
} |
|
51 |
|
|
52 |
|
|
53 |
public static Source PESI_ERMS(){ |
|
54 |
// BerlinModel - Pesi-ERMS |
|
55 |
String dbms = Source.SQL_SERVER_2008; |
|
56 |
String strServer = "BGBM42"; |
|
57 |
String strDB = "ERMS"; |
|
58 |
int port = 1433; |
|
59 |
String userName = "WebUser"; |
|
60 |
return makeSource(dbms, strServer, strDB, port, userName, null); |
|
61 |
} |
|
62 |
|
|
63 |
|
|
64 |
/** |
|
65 |
* Initializes the source. |
|
66 |
* @param dbms |
|
67 |
* @param strServer |
|
68 |
* @param strDB |
|
69 |
* @param port |
|
70 |
* @param userName |
|
71 |
* @param pwd |
|
72 |
* @return the source |
|
73 |
*/ |
|
74 |
private static Source makeSource(String dbms, String strServer, String strDB, int port, String userName, String pwd ){ |
|
75 |
//establish connection |
|
76 |
Source source = null; |
|
77 |
source = new Source(dbms, strServer, strDB); |
|
78 |
source.setPort(port); |
|
79 |
|
|
80 |
pwd = AccountStore.readOrStorePassword(dbms, strServer, userName, pwd); |
|
81 |
source.setUserAndPwd(userName, pwd); |
|
82 |
// write pwd to account store |
|
83 |
return source; |
|
84 |
} |
|
85 |
|
|
86 |
|
|
87 |
} |
app-import/src/main/java/eu/etaxonomy/cdm/app/pesi/PesiDestinations.java | ||
---|---|---|
1 |
// $Id$ |
|
2 |
/** |
|
3 |
* Copyright (C) 2009 EDIT |
|
4 |
* European Distributed Institute of Taxonomy |
|
5 |
* http://www.e-taxonomy.eu |
|
6 |
* |
|
7 |
* The contents of this file are subject to the Mozilla Public License Version 1.1 |
|
8 |
* See LICENSE.TXT at the top of this package for the full license terms. |
|
9 |
*/ |
|
10 |
package eu.etaxonomy.cdm.app.pesi; |
|
11 |
|
|
12 |
|
|
13 |
import org.apache.log4j.Logger; |
|
14 |
|
|
15 |
import eu.etaxonomy.cdm.common.AccountStore; |
|
16 |
import eu.etaxonomy.cdm.io.common.Source; |
|
17 |
|
|
18 |
/** |
|
19 |
* @author e.-m.lee |
|
20 |
* @date 16.02.2010 |
|
21 |
* |
|
22 |
*/ |
|
23 |
public class PesiDestinations { |
|
24 |
@SuppressWarnings("unused") |
|
25 |
private static final Logger logger = Logger.getLogger(PesiDestinations.class); |
|
26 |
|
|
27 |
public static Source pesi_test_local_PESI_V10(){ |
|
28 |
// CDM - PESI |
|
29 |
String dbms = Source.SQL_SERVER_2008; |
|
30 |
String strServer = "C206\\MSSQLSERVER2"; |
|
31 |
String strDB = "PESI_V10"; |
|
32 |
int port = 1433; |
|
33 |
String userName = "sa"; |
|
34 |
String pwd = "bewell"; |
|
35 |
return makeSource(dbms, strServer, strDB, port, userName, pwd); |
|
36 |
} |
|
37 |
|
|
38 |
public static Source pesi_test_local_CDM_DWH_FaEu(){ |
|
39 |
// CDM - PESI |
|
40 |
String dbms = Source.SQL_SERVER_2008; |
|
41 |
String strServer = "C206\\MSSQLSERVER2"; |
|
42 |
String strDB = "CDM_DWH_FaEu"; |
|
43 |
int port = 1433; |
|
44 |
String userName = "sa"; |
|
45 |
String pwd = "bewell"; |
|
46 |
return makeSource(dbms, strServer, strDB, port, userName, pwd); |
|
47 |
} |
|
48 |
|
|
49 |
public static Source pesi_test_local_PESI_V11(){ |
|
50 |
// CDM - PESI |
|
51 |
String dbms = Source.SQL_SERVER_2008; |
|
52 |
String strServer = "C206\\MSSQLSERVER2"; |
|
53 |
String strDB = "PESI_V11_LOCAL"; |
|
54 |
int port = 1433; |
|
55 |
String userName = "sa"; |
|
56 |
String pwd = "bewell"; |
|
57 |
return makeSource(dbms, strServer, strDB, port, userName, pwd); |
|
58 |
} |
|
59 |
|
|
60 |
public static Source pesi_test_bgbm42_CDM_DWH_FaEu(){ |
|
61 |
// CDM - PESI |
|
62 |
String dbms = Source.SQL_SERVER_2008; |
|
63 |
String strServer = "BGBM42"; |
|
64 |
String strDB = "CDM_DWH_FaEu"; |
|
65 |
int port = 1433; |
|
66 |
String userName = "WebUser"; |
|
67 |
String pwd = ""; |
|
68 |
return makeSource(dbms, strServer, strDB, port, userName, pwd); |
|
69 |
} |
|
70 |
|
|
71 |
public static Source pesi_test_bgbm42_PESI_V11(){ |
|
72 |
// CDM - PESI |
|
73 |
String dbms = Source.SQL_SERVER_2008; |
|
74 |
String strServer = "BGBM42"; |
|
75 |
String strDB = "PESI_v11"; |
|
76 |
int port = 1433; |
|
77 |
String userName = "WebUser"; |
|
78 |
String pwd = ""; |
|
79 |
return makeSource(dbms, strServer, strDB, port, userName, pwd); |
|
80 |
} |
|
81 |
|
|
82 |
/** |
|
83 |
* Initializes the source. |
|
84 |
* @param dbms |
|
85 |
* @param strServer |
|
86 |
* @param strDB |
|
87 |
* @param port |
|
88 |
* @param userName |
|
89 |
* @param pwd |
|
90 |
* @return the source |
|
91 |
*/ |
|
92 |
private static Source makeSource(String dbms, String strServer, String strDB, int port, String userName, String pwd ){ |
|
93 |
//establish connection |
|
94 |
Source source = null; |
|
95 |
source = new Source(dbms, strServer, strDB); |
|
96 |
source.setPort(port); |
|
97 |
|
|
98 |
pwd = AccountStore.readOrStorePassword(dbms, strServer, userName, pwd); |
|
99 |
source.setUserAndPwd(userName, pwd); |
|
100 |
// write pwd to account store |
|
101 |
return source; |
|
102 |
} |
|
103 |
|
|
104 |
} |
app-import/src/main/java/eu/etaxonomy/cdm/app/pesi/PesiExportActivator.java | ||
---|---|---|
1 |
// $Id$ |
|
2 |
/** |
|
3 |
* Copyright (C) 2009 EDIT |
|
4 |
* European Distributed Institute of Taxonomy |
|
5 |
* http://www.e-taxonomy.eu |
|
6 |
* |
|
7 |
* The contents of this file are subject to the Mozilla Public License Version 1.1 |
|
8 |
* See LICENSE.TXT at the top of this package for the full license terms. |
|
9 |
*/ |
|
10 |
package eu.etaxonomy.cdm.app.pesi; |
|
11 |
|
|
12 |
import java.util.UUID; |
|
13 |
|
|
14 |
import org.apache.log4j.Logger; |
|
15 |
|
|
16 |
import eu.etaxonomy.cdm.app.common.CdmDestinations; |
|
17 |
import eu.etaxonomy.cdm.database.ICdmDataSource; |
|
18 |
import eu.etaxonomy.cdm.io.common.CdmDefaultExport; |
|
19 |
import eu.etaxonomy.cdm.io.common.IExportConfigurator.CHECK; |
|
20 |
import eu.etaxonomy.cdm.io.common.IImportConfigurator.DO_REFERENCES; |
|
21 |
import eu.etaxonomy.cdm.io.common.Source; |
|
22 |
import eu.etaxonomy.cdm.io.pesi.out.PesiExportConfigurator; |
|
23 |
import eu.etaxonomy.cdm.model.name.NomenclaturalCode; |
|
24 |
|
|
25 |
/** |
|
26 |
* @author a.mueller |
|
27 |
* @author e.-m.lee |
|
28 |
* @date 16.02.2010 |
|
29 |
* |
|
30 |
*/ |
|
31 |
public class PesiExportActivator { |
|
32 |
|
|
33 |
@SuppressWarnings("unused") |
|
34 |
private static final Logger logger = Logger.getLogger(PesiExportActivator.class); |
|
35 |
|
|
36 |
//database validation status (create, update, validate ...) |
|
37 |
static final Source pesiDestination = PesiDestinations.pesi_test_local_CDM_DWH_FaEu(); |
|
38 |
static final ICdmDataSource cdmSource = CdmDestinations.cdm_test_jaxb(); |
|
39 |
static final UUID secUuid = UUID.fromString("d03ef02a-f226-4cb1-bdb4-f6c154f08a34"); |
|
40 |
static final int sourceSecId = 7331; |
|
41 |
static final int isHomotypicId = 72; |
|
42 |
static boolean useClassification = true; |
|
43 |
|
|
44 |
//check - export |
|
45 |
static final CHECK check = CHECK.EXPORT_WITHOUT_CHECK; |
|
46 |
|
|
47 |
//NomeclaturalCode |
|
48 |
static final NomenclaturalCode nomenclaturalCode = NomenclaturalCode.ICBN; |
|
49 |
|
|
50 |
// ****************** ALL ***************************************** |
|
51 |
|
|
52 |
//authors |
|
53 |
static final boolean doAuthors = true; |
|
54 |
//references |
|
55 |
static final DO_REFERENCES doReferences = DO_REFERENCES.ALL; |
|
56 |
//names |
|
57 |
static final boolean doTaxonNames = true; |
|
58 |
static final boolean doTypes = false; |
|
59 |
static final boolean doNameFacts = false; |
|
60 |
|
|
61 |
//taxa |
|
62 |
static final boolean doTaxa = true; |
|
63 |
static final boolean doRelTaxa = true; |
|
64 |
static final boolean doFacts = true; |
|
65 |
static final boolean doOccurences = true; |
|
66 |
|
|
67 |
// ************************ NONE **************************************** // |
|
68 |
|
|
69 |
// //authors |
|
70 |
// static final boolean doAuthors = false; |
|
71 |
// static final boolean doAuthorTeams = false; |
|
72 |
// //references |
|
73 |
// static final DO_REFERENCES doReferences = DO_REFERENCES.ALL; |
|
74 |
// //names |
|
75 |
// static final boolean doTaxonNames = true; |
|
76 |
// static final boolean doTypes = false; |
|
77 |
// static final boolean doNameFacts = false; |
|
78 |
// |
|
79 |
// //taxa |
|
80 |
// static final boolean doTaxa = false; |
|
81 |
// static final boolean doRelTaxa = false; |
|
82 |
// static final boolean doFacts = false; |
|
83 |
// static final boolean doOccurences = false; |
|
84 |
// |
|
85 |
|
|
86 |
public boolean doExport(ICdmDataSource source){ |
|
87 |
System.out.println("Start export to PESI ("+ pesiDestination.getDatabase() + ") ..."); |
|
88 |
|
|
89 |
//make PESI Source |
|
90 |
Source destination = pesiDestination; |
|
91 |
|
|
92 |
PesiExportConfigurator pesiExportConfigurator = PesiExportConfigurator.NewInstance(destination, source); |
|
93 |
|
|
94 |
pesiExportConfigurator.setDoNameFacts(doNameFacts); |
|
95 |
|
|
96 |
pesiExportConfigurator.setDoTaxa(doTaxa); |
|
97 |
pesiExportConfigurator.setDoRelTaxa(doRelTaxa); |
|
98 |
pesiExportConfigurator.setDoFacts(doFacts); |
|
99 |
pesiExportConfigurator.setDoOccurrence(doOccurences); |
|
100 |
// pesiExportConfigurator.setIsHomotypicId(isHomotypicId); |
|
101 |
pesiExportConfigurator.setCheck(check); |
|
102 |
pesiExportConfigurator.setUseClassification(useClassification); |
|
103 |
|
|
104 |
// invoke export |
|
105 |
CdmDefaultExport<PesiExportConfigurator> pesiExport = new CdmDefaultExport<PesiExportConfigurator>(); |
|
106 |
boolean result = pesiExport.invoke(pesiExportConfigurator); |
|
107 |
|
|
108 |
System.out.println("End export to PESI ("+ destination.getDatabase() + ")..." + (result? "(successful)":"(with errors)")); |
|
109 |
return result; |
|
110 |
} |
|
111 |
|
|
112 |
/** |
|
113 |
* @param args |
|
114 |
*/ |
|
115 |
public static void main(String[] args) { |
|
116 |
PesiExportActivator ex = new PesiExportActivator(); |
|
117 |
ICdmDataSource source = CdmDestinations.chooseDestination(args) != null ? CdmDestinations.chooseDestination(args) : cdmSource; |
|
118 |
|
|
119 |
ex.doExport(source); |
|
120 |
} |
|
121 |
|
|
122 |
} |
app-import/src/main/java/eu/etaxonomy/cdm/app/pesi/erms/ErmsActivator.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.pesi.erms; |
|
11 |
|
|
12 |
import java.util.UUID; |
|
13 |
|
|
14 |
import org.apache.log4j.Logger; |
|
15 |
|
|
16 |
import eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration; |
|
17 |
import eu.etaxonomy.cdm.app.common.CdmDestinations; |
|
18 |
import eu.etaxonomy.cdm.app.pesi.FaunaEuropaeaSources; |
|
19 |
import eu.etaxonomy.cdm.database.DbSchemaValidation; |
|
20 |
import eu.etaxonomy.cdm.database.ICdmDataSource; |
|
21 |
import eu.etaxonomy.cdm.io.common.CdmDefaultImport; |
|
22 |
import eu.etaxonomy.cdm.io.common.IImportConfigurator.CHECK; |
|
23 |
import eu.etaxonomy.cdm.io.common.IImportConfigurator.DO_REFERENCES; |
|
24 |
import eu.etaxonomy.cdm.io.common.Source; |
|
25 |
import eu.etaxonomy.cdm.io.pesi.erms.ErmsImportConfigurator; |
|
26 |
import eu.etaxonomy.cdm.model.common.ISourceable; |
|
27 |
import eu.etaxonomy.cdm.model.name.NomenclaturalCode; |
|
28 |
import eu.etaxonomy.cdm.model.name.ZoologicalName; |
|
29 |
|
|
30 |
|
|
31 |
/** |
|
32 |
* TODO add the following to a wiki page: |
|
33 |
* HINT: If you are about to import into a mysql data base running under windows and if you wish to dump and restore the resulting data base under another operation systen |
|
34 |
* you must set the mysql system variable lower_case_table_names = 0 in order to create data base with table compatible names. |
|
35 |
* |
|
36 |
* |
|
37 |
* @author a.mueller |
|
38 |
* |
|
39 |
*/ |
|
40 |
public class ErmsActivator { |
|
41 |
private static final Logger logger = Logger.getLogger(ErmsActivator.class); |
|
42 |
|
|
43 |
//database validation status (create, update, validate ...) |
|
44 |
static DbSchemaValidation hbm2dll = DbSchemaValidation.CREATE; |
|
45 |
static final Source ermsSource = FaunaEuropaeaSources.PESI_ERMS(); |
|
46 |
static final ICdmDataSource cdmDestination = CdmDestinations.localH2Erms(); |
|
47 |
static final UUID treeUuid = UUID.fromString("8bd27d84-fd4f-4bfa-bde0-3e6b7311b334"); |
|
48 |
static final UUID featureTreeUuid = UUID.fromString("33cbf7a8-0c47-4d47-bd11-b7d77a38d0f6"); |
|
49 |
//static final Object[] featureKeyList = new Integer[]{1,4,5,10,11,12,13,14, 249, 250, 251, 252, 253}; |
|
50 |
|
|
51 |
//check - import |
|
52 |
static final CHECK check = CHECK.CHECK_AND_IMPORT; |
|
53 |
|
|
54 |
static final int partitionSize = 2000; |
|
55 |
|
|
56 |
|
|
57 |
//NomeclaturalCode |
|
58 |
static final NomenclaturalCode nomenclaturalCode = NomenclaturalCode.ICZN; |
|
59 |
|
|
60 |
//ignore null |
|
61 |
static final boolean ignoreNull = true; |
|
62 |
|
|
63 |
// ***************** ALL ************************************************// |
|
64 |
|
|
65 |
//references |
|
66 |
static final DO_REFERENCES doReferences = DO_REFERENCES.ALL; |
|
67 |
|
|
68 |
//taxa |
|
69 |
static final boolean doTaxa = true; |
|
70 |
static final boolean doRelTaxa = true; |
|
71 |
static final boolean doLinks = true; |
|
72 |
static final boolean doOccurences = true; |
|
73 |
static final boolean doImages = true; |
|
74 |
|
|
75 |
|
|
76 |
//******************** NONE ***************************************// |
|
77 |
|
|
78 |
|
|
79 |
// //references |
|
80 |
// static final DO_REFERENCES doReferences = DO_REFERENCES.NONE; |
|
81 |
// |
|
82 |
// //taxa |
|
83 |
// static final boolean doTaxa = false; |
|
84 |
// static final boolean doRelTaxa = false; |
|
85 |
// static final boolean doLinks = false; |
|
86 |
// static final boolean doOccurences = false; |
|
87 |
// |
|
88 |
|
|
89 |
|
|
90 |
/** |
|
91 |
* @param args |
|
92 |
*/ |
|
93 |
public static void main(String[] args) { |
|
94 |
System.out.println("Start import from ("+ ermsSource.getDatabase() + ") ..."); |
|
95 |
|
|
96 |
//make ERMS Source |
|
97 |
Source source = ermsSource; |
|
98 |
ICdmDataSource destination = CdmDestinations.chooseDestination(args) != null ? CdmDestinations.chooseDestination(args) : cdmDestination; |
|
99 |
|
|
100 |
ErmsImportConfigurator ermsImportConfigurator = ErmsImportConfigurator.NewInstance(source, destination); |
|
101 |
|
|
102 |
ermsImportConfigurator.setClassificationUuid(treeUuid); |
|
103 |
ermsImportConfigurator.setNomenclaturalCode(nomenclaturalCode); |
|
104 |
|
|
105 |
ermsImportConfigurator.setIgnoreNull(ignoreNull); |
|
106 |
ermsImportConfigurator.setDoReferences(doReferences); |
|
107 |
|
|
108 |
ermsImportConfigurator.setDoTaxa(doTaxa); |
|
109 |
ermsImportConfigurator.setDoRelTaxa(doRelTaxa); |
|
110 |
ermsImportConfigurator.setDoLinks(doLinks); |
|
111 |
ermsImportConfigurator.setDoOccurrence(doOccurences); |
|
112 |
ermsImportConfigurator.setDbSchemaValidation(hbm2dll); |
|
113 |
|
|
114 |
ermsImportConfigurator.setCheck(check); |
|
115 |
ermsImportConfigurator.setRecordsPerTransaction(partitionSize); |
|
116 |
|
|
117 |
// invoke import |
|
118 |
CdmDefaultImport<ErmsImportConfigurator> ermsImport = new CdmDefaultImport<ErmsImportConfigurator>(); |
|
119 |
ermsImport.invoke(ermsImportConfigurator); |
|
120 |
|
|
121 |
if (ermsImportConfigurator.getCheck().equals(CHECK.CHECK_AND_IMPORT) || ermsImportConfigurator.getCheck().equals(CHECK.IMPORT_WITHOUT_CHECK) ){ |
|
122 |
ICdmApplicationConfiguration app = ermsImport.getCdmAppController(); |
|
123 |
ISourceable obj = app.getCommonService().getSourcedObjectByIdInSource(ZoologicalName.class, "1000027", null); |
|
124 |
logger.info(obj); |
|
125 |
|
|
126 |
// //make feature tree |
|
127 |
// FeatureTree tree = TreeCreator.flatTree(featureTreeUuid, ermsImportConfigurator.getFeatureMap(), featureKeyList); |
|
128 |
// app = ermsImport.getCdmAppController(); |
|
129 |
// app.getFeatureTreeService().saveOrUpdate(tree); |
|
130 |
} |
|
131 |
System.out.println("End import from ("+ source.getDatabase() + ")..."); |
|
132 |
} |
|
133 |
|
|
134 |
} |
app-import/src/main/java/eu/etaxonomy/cdm/app/pesi/merging/FaunaEuErmsFindIdenticalNamesActivator.java | ||
---|---|---|
1 |
package eu.etaxonomy.cdm.app.pesi.merging; |
|
2 |
|
|
3 |
import java.io.FileWriter; |
|
4 |
import java.io.IOException; |
|
5 |
import java.util.ArrayList; |
|
6 |
import java.util.Iterator; |
|
7 |
import java.util.List; |
|
8 |
import java.util.Set; |
|
9 |
|
|
10 |
import eu.etaxonomy.cdm.api.application.CdmApplicationController; |
|
11 |
import eu.etaxonomy.cdm.app.common.CdmDestinations; |
|
12 |
import eu.etaxonomy.cdm.app.util.TestDatabase; |
|
13 |
import eu.etaxonomy.cdm.database.DbSchemaValidation; |
|
14 |
import eu.etaxonomy.cdm.database.ICdmDataSource; |
|
15 |
import eu.etaxonomy.cdm.hibernate.HibernateProxyHelper; |
|
16 |
import eu.etaxonomy.cdm.io.pesi.merging.FaunaEuErmsMerging; |
|
17 |
import eu.etaxonomy.cdm.model.common.IdentifiableSource; |
|
18 |
import eu.etaxonomy.cdm.model.name.Rank; |
|
19 |
import eu.etaxonomy.cdm.model.name.TaxonNameBase; |
|
20 |
import eu.etaxonomy.cdm.model.name.ZoologicalName; |
|
21 |
import eu.etaxonomy.cdm.model.taxon.Taxon; |
|
22 |
import eu.etaxonomy.cdm.model.taxon.TaxonNode; |
|
23 |
|
|
24 |
public class FaunaEuErmsFindIdenticalNamesActivator { |
|
25 |
|
|
26 |
static final ICdmDataSource faunaEuropaeaSource = CdmDestinations.cdm_test_jaxb2(); |
|
27 |
//static final ICdmDataSource ermsSource = CdmDestinations.cdm_test_andreasM(); |
|
28 |
|
|
29 |
//TODO hole aus beiden DB alle TaxonNameBases |
|
30 |
|
|
31 |
|
|
32 |
private CdmApplicationController initDb(ICdmDataSource db) { |
|
33 |
|
|
34 |
// Init source DB |
|
35 |
CdmApplicationController appCtrInit = null; |
|
36 |
|
|
37 |
appCtrInit = TestDatabase.initDb(db, DbSchemaValidation.VALIDATE, false); |
|
38 |
|
|
39 |
return appCtrInit; |
|
40 |
} |
|
41 |
|
|
42 |
|
|
43 |
/** |
|
44 |
* @param args |
|
45 |
*/ |
|
46 |
public static void main(String[] args) { |
|
47 |
|
|
48 |
FaunaEuErmsFindIdenticalNamesActivator sc = new FaunaEuErmsFindIdenticalNamesActivator(); |
|
49 |
|
|
50 |
CdmApplicationController appCtrFaunaEu = sc.initDb(faunaEuropaeaSource); |
|
51 |
String sFileName = "c:\\test"; |
|
52 |
//CdmApplicationController appCtrErms = sc.initDb(ermsSource); |
|
53 |
List<String> propertyPaths = new ArrayList<String>(); |
|
54 |
propertyPaths.add("sources.*"); |
|
55 |
propertyPaths.add("sources.idInSource"); |
|
56 |
propertyPaths.add("sources.idNamespace"); |
|
57 |
propertyPaths.add("taxonBases.*"); |
|
58 |
propertyPaths.add("taxonBases.relationsFromThisTaxon"); |
|
59 |
propertyPaths.add("taxonBases.taxonNodes.*"); |
|
60 |
propertyPaths.add("taxonBases.taxonNodes.parent.*"); |
|
61 |
propertyPaths.add("taxonBases.taxonNodes.parent.taxon.name.*"); |
|
62 |
System.err.println("Start getIdenticalNames..."); |
|
63 |
List<TaxonNameBase> namesOfIdenticalTaxa = appCtrFaunaEu.getTaxonService().findIdenticalTaxonNameIds(propertyPaths); |
|
64 |
//List<UUID> namesOfIdenticalTaxa = appCtrFaunaEu.getTaxonService().findIdenticalTaxonNameIds(propertyPaths); |
|
65 |
|
|
66 |
System.err.println("first name: " + namesOfIdenticalTaxa.get(0) + " " + namesOfIdenticalTaxa.size()); |
|
67 |
TaxonNameBase zooName = (TaxonNameBase)namesOfIdenticalTaxa.get(0); |
|
68 |
System.err.println(zooName + " nr of taxa " + namesOfIdenticalTaxa.size()); |
|
69 |
//TaxonNameComparator taxComp = new TaxonNameComparator(); |
|
70 |
|
|
71 |
//Collections.sort(namesOfIdenticalTaxa,taxComp); |
|
72 |
System.err.println(namesOfIdenticalTaxa.get(0) + " - " + namesOfIdenticalTaxa.get(1) + " - " + namesOfIdenticalTaxa.get(2)); |
|
73 |
List<FaunaEuErmsMerging> mergingObjects = new ArrayList<FaunaEuErmsMerging>(); |
|
74 |
FaunaEuErmsMerging mergeObject; |
|
75 |
TaxonNameBase faunaEuTaxName; |
|
76 |
TaxonNameBase ermsTaxName; |
|
77 |
|
|
78 |
mergingObjects= sc.createMergeObjects(namesOfIdenticalTaxa, appCtrFaunaEu); |
|
79 |
|
|
80 |
sc.writeSameNamesdifferentAuthorToCsv(mergingObjects, sFileName + "_authors.csv"); |
|
81 |
sc.writeSameNamesdifferentStatusToCsv(mergingObjects, sFileName + "_status.csv"); |
|
82 |
sc.writeSameNamesToCsVFile(mergingObjects, sFileName + "_names.csv"); |
|
83 |
sc.writeSameNamesdifferentPhylumToCsv(mergingObjects, sFileName + "_phylum.csv"); |
|
84 |
|
|
85 |
|
|
86 |
System.out.println("End merging Fauna Europaea and Erms"); |
|
87 |
|
|
88 |
} |
|
89 |
|
|
90 |
private boolean writeSameNamesToCsVFile( |
|
91 |
List<FaunaEuErmsMerging> mergingObjects, String string) { |
|
92 |
try{ |
|
93 |
FileWriter writer = new FileWriter(string); |
|
94 |
|
|
95 |
//create Header |
|
96 |
String firstLine = "same names"; |
|
97 |
createHeader(writer, firstLine); |
|
98 |
for (FaunaEuErmsMerging merging : mergingObjects){ |
|
99 |
writeCsvLine(writer, merging) ; |
|
100 |
} |
|
101 |
writer.flush(); |
|
102 |
writer.close(); |
|
103 |
} |
|
104 |
catch(IOException e) |
|
105 |
{ |
|
106 |
return false; |
|
107 |
} |
|
108 |
return true; |
|
109 |
} |
|
110 |
|
|
111 |
|
|
112 |
private boolean writeSameNamesdifferentPhylumToCsv(List<FaunaEuErmsMerging> mergingObjects, String sfileName){ |
|
113 |
try |
|
114 |
{ |
|
115 |
FileWriter writer = new FileWriter(sfileName); |
|
116 |
|
|
117 |
//create Header |
|
118 |
String firstLine = "same names but different phylum"; |
|
119 |
createHeader(writer, firstLine); |
|
120 |
|
|
121 |
//write data |
|
122 |
for (FaunaEuErmsMerging merging : mergingObjects){ |
|
123 |
//TODO |
|
124 |
if ((merging.getPhylumInErms()== null )^ (merging.getPhylumInFaunaEu()== null)){ |
|
125 |
writeCsvLine(writer, merging) ; |
|
126 |
}else if(!((merging.getPhylumInErms()==null) && (merging.getPhylumInFaunaEu()==null))){ |
|
127 |
if(!merging.getPhylumInErms().equals(merging.getPhylumInFaunaEu())){ |
|
128 |
writeCsvLine(writer, merging) ; |
|
129 |
} |
|
130 |
} |
|
131 |
} |
|
132 |
writer.flush(); |
|
133 |
writer.close(); |
|
134 |
} |
|
135 |
catch(IOException e) |
|
136 |
{ |
|
137 |
return false; |
|
138 |
} |
|
139 |
return true; |
|
140 |
} |
|
141 |
|
|
142 |
private boolean writeSameNamesdifferentRankToCsv(List<FaunaEuErmsMerging> mergingObjects, String sfileName){ |
|
143 |
try |
|
144 |
{ |
|
145 |
FileWriter writer = new FileWriter(sfileName); |
|
146 |
String firstLine = "same names but different rank"; |
|
147 |
//create Header |
|
148 |
createHeader(writer, firstLine); |
|
149 |
|
|
150 |
//write data |
|
151 |
for (FaunaEuErmsMerging merging : mergingObjects){ |
|
152 |
|
|
153 |
if (!merging.getRankInErms().equals(merging.getRankInFaunaEu())){ |
|
154 |
writeCsvLine(writer, merging); |
|
155 |
} |
|
156 |
} |
|
157 |
writer.flush(); |
|
158 |
writer.close(); |
|
159 |
} |
|
160 |
catch(IOException e) |
|
161 |
{ |
|
162 |
return false; |
|
163 |
} |
|
164 |
return true; |
|
165 |
} |
|
166 |
|
|
167 |
private void createHeader(FileWriter writer, String firstLine) throws IOException{ |
|
168 |
writer.append(firstLine); |
|
169 |
writer.append('\n'); |
|
170 |
writer.append("uuid in Fauna Europaea"); |
|
171 |
writer.append(';'); |
|
172 |
writer.append("id in Fauna Europaea"); |
|
173 |
writer.append(';'); |
|
174 |
writer.append("name"); |
|
175 |
writer.append(';'); |
|
176 |
writer.append("author"); |
|
177 |
writer.append(';'); |
|
178 |
writer.append("rank"); |
|
179 |
writer.append(';'); |
|
180 |
writer.append("state"); |
|
181 |
writer.append(';'); |
|
182 |
writer.append("phylum"); |
|
183 |
writer.append(';'); |
|
184 |
writer.append("parent"); |
|
185 |
writer.append(';'); |
|
186 |
writer.append("parent rank"); |
|
187 |
writer.append(';'); |
|
188 |
|
|
189 |
writer.append("uuid in Erms"); |
|
190 |
writer.append(';'); |
|
191 |
writer.append("id in Erms"); |
|
192 |
writer.append(';'); |
|
193 |
writer.append("name"); |
|
194 |
writer.append(';'); |
|
195 |
writer.append("author"); |
|
196 |
writer.append(';'); |
|
197 |
writer.append("rank"); |
|
198 |
writer.append(';'); |
|
199 |
writer.append("state"); |
|
200 |
writer.append(';'); |
|
201 |
writer.append("phylum"); |
|
202 |
writer.append(';'); |
|
203 |
writer.append("parent"); |
|
204 |
writer.append(';'); |
|
205 |
writer.append("parent rank"); |
|
206 |
writer.append('\n'); |
|
207 |
} |
|
208 |
|
|
209 |
private boolean writeSameNamesdifferentStatusToCsv(List<FaunaEuErmsMerging> mergingObjects, String sfileName){ |
|
210 |
try |
|
211 |
{ |
|
212 |
FileWriter writer = new FileWriter(sfileName); |
|
213 |
|
|
214 |
//create Header |
|
215 |
String firstLine = "same names but different status"; |
|
216 |
createHeader(writer, firstLine); |
|
217 |
|
|
218 |
//write data |
|
219 |
for (FaunaEuErmsMerging merging : mergingObjects){ |
|
220 |
|
|
221 |
if (merging.isStatInErms()^merging.isStatInFaunaEu()){ |
|
222 |
writeCsvLine(writer, merging); |
|
223 |
} |
|
224 |
} |
|
225 |
|
|
226 |
|
|
227 |
writer.flush(); |
|
228 |
writer.close(); |
|
229 |
} |
|
230 |
catch(IOException e) |
|
231 |
{ |
|
232 |
return false; |
|
233 |
} |
|
234 |
return true; |
|
235 |
} |
|
236 |
|
|
237 |
private boolean writeSameNamesdifferentAuthorToCsv(List<FaunaEuErmsMerging> mergingObjects, String sfileName){ |
|
238 |
try |
|
239 |
{ |
|
240 |
FileWriter writer = new FileWriter(sfileName); |
|
241 |
|
|
242 |
//create Header |
|
243 |
String firstLine = "same names but different authors"; |
|
244 |
createHeader(writer, firstLine); |
|
245 |
|
|
246 |
//write data |
|
247 |
for (FaunaEuErmsMerging merging : mergingObjects){ |
|
248 |
|
|
249 |
if (!merging.getAuthorInErms().equals(merging.getAuthorInFaunaEu())){ |
|
250 |
writeCsvLine(writer, merging); |
|
251 |
} |
|
252 |
} |
|
253 |
|
|
254 |
|
|
255 |
writer.flush(); |
|
256 |
writer.close(); |
|
257 |
} |
|
258 |
catch(IOException e) |
|
259 |
{ |
|
260 |
return false; |
|
261 |
} |
|
262 |
return true; |
|
263 |
} |
|
264 |
|
|
265 |
private void writeCsvLine(FileWriter writer, FaunaEuErmsMerging merging) throws IOException{ |
|
266 |
|
|
267 |
writer.append(merging.getUuidFaunaEu()); |
|
268 |
writer.append(';'); |
|
269 |
writer.append(merging.getIdInFaunaEu()); |
|
270 |
writer.append(';'); |
|
271 |
writer.append(merging.getNameCacheInFaunaEu()); |
|
272 |
writer.append(';'); |
|
273 |
writer.append(merging.getAuthorInFaunaEu()); |
|
274 |
writer.append(';'); |
|
275 |
writer.append(merging.getRankInFaunaEu()); |
|
276 |
writer.append(';'); |
|
277 |
if (merging.isStatInFaunaEu()){ |
|
278 |
writer.append("accepted"); |
|
279 |
}else{ |
|
280 |
writer.append("synonym"); |
|
281 |
} |
|
282 |
writer.append(';'); |
|
283 |
writer.append(merging.getPhylumInFaunaEu()); |
|
284 |
writer.append(';'); |
|
285 |
writer.append(merging.getParentStringInFaunaEu()); |
|
286 |
writer.append(';'); |
|
287 |
writer.append(merging.getParentRankStringInFaunaEu()); |
|
288 |
writer.append(';'); |
|
289 |
|
|
290 |
writer.append(merging.getUuidErms()); |
|
291 |
writer.append(';'); |
|
292 |
writer.append(merging.getIdInErms()); |
|
293 |
writer.append(';'); |
|
294 |
writer.append(merging.getNameCacheInErms()); |
|
295 |
writer.append(';'); |
|
296 |
writer.append(merging.getAuthorInErms()); |
|
297 |
writer.append(';'); |
|
298 |
writer.append(merging.getRankInErms()); |
|
299 |
writer.append(';'); |
|
300 |
if (merging.isStatInErms()){ |
|
301 |
writer.append("accepted"); |
|
302 |
}else{ |
|
303 |
writer.append("synonym"); |
|
304 |
} |
|
305 |
|
|
306 |
writer.append(';'); |
|
307 |
writer.append(merging.getPhylumInErms()); |
|
308 |
writer.append(';'); |
|
309 |
writer.append(merging.getParentStringInErms()); |
|
310 |
writer.append(';'); |
|
311 |
writer.append(merging.getParentRankStringInErms()); |
|
312 |
writer.append('\n'); |
|
313 |
} |
|
314 |
|
|
315 |
|
|
316 |
private List<FaunaEuErmsMerging> createMergeObjects(List<TaxonNameBase> names, CdmApplicationController appCtr){ |
|
317 |
|
|
318 |
List<FaunaEuErmsMerging> merge = new ArrayList<FaunaEuErmsMerging>(); |
|
319 |
ZoologicalName zooName, zooName2; |
|
320 |
FaunaEuErmsMerging mergeObject; |
|
321 |
String idInSource1; |
|
322 |
for (int i = 0; i<names.size()-1; i=i+2){ |
|
323 |
zooName = (ZoologicalName)names.get(i); |
|
324 |
zooName2 = (ZoologicalName)names.get(i+1); |
|
325 |
mergeObject = new FaunaEuErmsMerging(); |
|
326 |
//TODO:?berpr?fen, ob die beiden Namen identisch sind und aus unterschiedlichen DB kommen |
|
327 |
|
|
328 |
//getPhylum |
|
329 |
String phylum1 = null; |
|
330 |
if (!zooName.getRank().isHigher(Rank.PHYLUM())){ |
|
331 |
phylum1 =appCtr.getTaxonService().getPhylumName(zooName); |
|
332 |
} |
|
333 |
|
|
334 |
String phylum2 = null; |
|
335 |
if (!zooName2.getRank().isHigher(Rank.PHYLUM())){ |
|
336 |
phylum2 = appCtr.getTaxonService().getPhylumName(zooName2); |
|
337 |
} |
|
338 |
mergeObject.setPhylumInErms(phylum1); |
|
339 |
mergeObject.setPhylumInFaunaEu(phylum2); |
|
340 |
|
|
341 |
//getUuids |
|
342 |
mergeObject.setUuidErms(zooName.getUuid().toString()); |
|
343 |
mergeObject.setUuidFaunaEu(zooName.getUuid().toString()); |
|
344 |
|
|
345 |
Iterator sources = zooName.getSources().iterator(); |
|
346 |
if (sources.hasNext()){ |
|
347 |
IdentifiableSource source = (IdentifiableSource)sources.next(); |
|
348 |
idInSource1 = source.getIdInSource(); |
|
349 |
mergeObject.setIdInErms(idInSource1); |
|
350 |
} |
|
351 |
sources = zooName2.getSources().iterator(); |
|
352 |
if (sources.hasNext()){ |
|
353 |
IdentifiableSource source = (IdentifiableSource)sources.next(); |
|
354 |
idInSource1 = source.getIdInSource(); |
|
355 |
mergeObject.setIdInFaunaEu(idInSource1); |
|
356 |
} |
|
357 |
|
|
358 |
mergeObject.setNameCacheInErms(zooName.getNameCache()); |
|
359 |
mergeObject.setNameCacheInFaunaEu(zooName2.getNameCache()); |
|
360 |
|
|
361 |
mergeObject.setAuthorInErms(zooName.getAuthorshipCache()); |
|
362 |
mergeObject.setAuthorInFaunaEu(zooName2.getAuthorshipCache()); |
|
363 |
Set<Taxon> taxa = zooName.getTaxa(); |
|
364 |
if (!taxa.isEmpty()){ |
|
365 |
mergeObject.setStatInErms(true); |
|
366 |
Iterator taxaIterator = taxa.iterator(); |
|
367 |
Taxon taxon = null; |
|
368 |
while (taxaIterator.hasNext()){ |
|
369 |
taxon = (Taxon) taxaIterator.next(); |
|
370 |
if (!taxon.isMisapplication()){ |
|
371 |
break; |
|
372 |
} |
|
373 |
} |
|
374 |
Set<TaxonNode> nodes = taxon.getTaxonNodes(); |
|
375 |
Iterator taxonNodeIterator = nodes.iterator(); |
|
376 |
TaxonNode node, parentNode = null; |
|
377 |
while (taxonNodeIterator.hasNext()){ |
|
378 |
node = (TaxonNode)taxonNodeIterator.next(); |
|
379 |
if (!node.isTopmostNode()){ |
|
380 |
parentNode = node.getParent(); |
|
381 |
} |
|
382 |
} |
|
383 |
//TODO: ?ndern mit erweitertem Initializer.. |
|
384 |
if (parentNode != null){ |
|
385 |
ZoologicalName parentName = HibernateProxyHelper.deproxy(parentNode.getTaxon().getName(), ZoologicalName.class); |
|
386 |
String parentNameCache = parentName.getNameCache(); |
|
387 |
mergeObject.setParentStringInErms(parentNameCache); |
|
388 |
mergeObject.setParentRankStringInErms(parentName.getRank().getLabel()); |
Also available in: Unified diff
remove pesi activators from app-import