Project

General

Profile

« Previous | Next » 

Revision 335dbebe

Added by Andreas Müller over 12 years ago

move activators from app-import to cdm-pesi

View differences:

.gitattributes
1238 1238
cdm-pesi/LICENSE.TXT -text
1239 1239
cdm-pesi/README.TXT -text
1240 1240
cdm-pesi/pom.xml -text
1241
cdm-pesi/src/main/java/eu/etaxonomy/cdm/app/common/BerlinModelSources.java -text
1242
cdm-pesi/src/main/java/eu/etaxonomy/cdm/app/common/CdmDestinations.java -text
1243
cdm-pesi/src/main/java/eu/etaxonomy/cdm/app/common/ImportUtils.java -text
1244
cdm-pesi/src/main/java/eu/etaxonomy/cdm/app/common/TestDatabase.java -text
1245
cdm-pesi/src/main/java/eu/etaxonomy/cdm/app/common/TreeCreator.java -text
1246
cdm-pesi/src/main/java/eu/etaxonomy/cdm/app/pesi/ErmsActivator.java -text
1247
cdm-pesi/src/main/java/eu/etaxonomy/cdm/app/pesi/EuroMedActivator.java -text
1248
cdm-pesi/src/main/java/eu/etaxonomy/cdm/app/pesi/FaunaEuropaeaActivator.java -text
1249
cdm-pesi/src/main/java/eu/etaxonomy/cdm/app/pesi/FaunaEuropaeaSources.java -text
1250
cdm-pesi/src/main/java/eu/etaxonomy/cdm/app/pesi/PesiDestinations.java -text
1251
cdm-pesi/src/main/java/eu/etaxonomy/cdm/app/pesi/PesiExportActivator.java -text
1252
cdm-pesi/src/main/java/eu/etaxonomy/cdm/app/pesi/erms/ErmsActivator.java -text
1253
cdm-pesi/src/main/java/eu/etaxonomy/cdm/app/pesi/merging/FaunaEuErmsFindIdenticalNamesActivator.java -text
1254
cdm-pesi/src/main/java/eu/etaxonomy/cdm/app/pesi/merging/FaunaEuErmsMergeActivator.java -text
1241 1255
cdm-pesi/src/main/java/eu/etaxonomy/cdm/io/pesi/erms/ErmsAreaImport.java -text
1242 1256
cdm-pesi/src/main/java/eu/etaxonomy/cdm/io/pesi/erms/ErmsDrImport.java -text
1243 1257
cdm-pesi/src/main/java/eu/etaxonomy/cdm/io/pesi/erms/ErmsImageImport.java -text
cdm-pesi/src/main/java/eu/etaxonomy/cdm/app/common/BerlinModelSources.java
1

  
2
/**
3
* Copyright (C) 2007 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

  
11
package eu.etaxonomy.cdm.app.common;
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
public class BerlinModelSources {
20
	@SuppressWarnings("unused")
21
	private static final Logger logger = Logger.getLogger(BerlinModelSources.class);
22
	
23
	public static Source euroMed(){
24
		//	BerlinModel - Euro+Med
25
		String dbms = Source.SQL_SERVER_2005;
26
		String strServer = "BGBM42";
27
		String strDB = "EuroPlusMed_00_Edit";
28
		int port = 1247;
29
		String userName = "webUser";
30
		return  makeSource(dbms, strServer, strDB, port, userName, null);
31
	}
32
	
33
	public static Source PESI_ERMS(){
34
		//	BerlinModel - Pesi-ERMS
35
		String dbms = Source.SQL_SERVER_2005;
36
		String strServer = "SQL2000Intern\\SQL2005";
37
		String strDB = "BM_ERMS";
38
		int port = 1433;
39
		String userName = "WebUser";
40
		return  makeSource(dbms, strServer, strDB, port, userName, null);
41
	}
42
	
43
	/**
44
	 * Initializes the source.
45
	 * @param dbms
46
	 * @param strServer
47
	 * @param strDB
48
	 * @param port
49
	 * @param userName
50
	 * @param pwd
51
	 * @return the source
52
	 */
53
	private static Source makeSource(String dbms, String strServer, String strDB, int port, String userName, String pwd ){
54
		//establish connection
55
		Source source = null;
56
		source = new Source(dbms, strServer, strDB);
57
		source.setPort(port);
58
			
59
		pwd = AccountStore.readOrStorePassword(dbms, strServer, userName, pwd);
60
		source.setUserAndPwd(userName, pwd);
61
		// write pwd to account store
62
		return source;
63
	}
64

  
65
}
cdm-pesi/src/main/java/eu/etaxonomy/cdm/app/common/CdmDestinations.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.common;
11

  
12
import java.lang.reflect.InvocationTargetException;
13
import java.lang.reflect.Method;
14

  
15
import org.apache.log4j.Logger;
16

  
17
import eu.etaxonomy.cdm.common.AccountStore;
18
import eu.etaxonomy.cdm.database.CdmDataSource;
19
import eu.etaxonomy.cdm.database.DatabaseTypeEnum;
20
import eu.etaxonomy.cdm.database.ICdmDataSource;
21

  
22
public class CdmDestinations {
23
	@SuppressWarnings("unused")
24
	private static Logger logger = Logger.getLogger(CdmDestinations.class);
25
	
26
	/**
27
	 * Intended to be used for imports
28
	 */
29
	public static ICdmDataSource import_a(){
30
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
31
		String cdmServer = "localhost";
32
		String cdmDB = "import_a";
33
		String cdmUserName = "root";
34
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
35
	}
36

  
37
	public static ICdmDataSource cdm_test_alex(){
38
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
39
		String cdmServer = "192.168.2.10";
40
		String cdmDB = "cdm_production_palmae"; 
41
		String cdmUserName = "edit";
42
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
43
	}
44
	
45

  
46
	public static ICdmDataSource cdm_test_useSummary(){
47
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
48
		String cdmServer = "localhost";
49
		String cdmDB = "palmae_2011_07_17"; 
50
		String cdmUserName = "edit";
51
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
52
	}
53
	
54
	public static ICdmDataSource cdm_test_jaxb(){
55
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
56
		String cdmServer = "192.168.2.10";
57
		String cdmDB = "cdm_test_jaxb"; 
58
		String cdmUserName = "edit";
59
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
60
	}
61
	
62
	public static ICdmDataSource cdm_test_jaxb2(){
63
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
64
		String cdmServer = "192.168.2.10";
65
		String cdmDB = "cdm_test_jaxb2"; 
66
		String cdmUserName = "edit";
67
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
68
	}
69

  
70
	public static ICdmDataSource cdm_test_andreasM(){
71
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
72
		String cdmServer = "192.168.2.10";
73
		String cdmDB = "cdm_test_andreasM"; 
74
		String cdmUserName = "edit";
75
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
76
	}
77
	
78
	public static ICdmDataSource cdm_test_andreasM2(){
79
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
80
		String cdmServer = "192.168.2.10";
81
		String cdmDB = "cdm_test_andreasM2"; 
82
		String cdmUserName = "edit";
83
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
84
	}
85
	
86
	public static ICdmDataSource cdm_test_local_mysql(){
87
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
88
		String cdmServer = "127.0.0.1";
89
		String cdmDB = "cdm_test"; 
90
		String cdmUserName = "edit";
91
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
92
	}
93

  
94
	public static ICdmDataSource cdm_test_local_mysql_fdac(){
95
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
96
		String cdmServer = "127.0.0.1";
97
		String cdmDB = "fdac"; 
98
		String cdmUserName = "edit";
99
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
100
	}
101
	
102
	public static ICdmDataSource cdm_test_local_mysql_test(){
103
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
104
		String cdmServer = "127.0.0.1";
105
		String cdmDB = "test"; 
106
		String cdmUserName = "edit";
107
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
108
	}
109

  
110
	
111
	public static ICdmDataSource cdm_portal(){
112
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
113
		String cdmServer = "192.168.2.10";
114
		String cdmDB = "cdm_portal";
115
		String cdmUserName = "edit";
116
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
117
	}
118
	
119
	public static ICdmDataSource cdm_portal_test(){
120
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
121
		String cdmServer = "192.168.2.10";
122
		String cdmDB = "cdm_portal_test";
123
		String cdmUserName = "edit";
124
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
125
	}
126
	
127
	public static ICdmDataSource cdm_test_patricia(){
128
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
129
		String cdmServer = "192.168.2.10";
130
		String cdmDB = "cdm_test_patricia";
131
		String cdmUserName = "edit";
132
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
133
	}
134
	
135
	//
136
	public static ICdmDataSource cdm_test_andreasK1(){
137
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
138
		String cdmServer = "192.168.2.10";
139
		String cdmDB = "cdm_test_andreasK1";
140
		String cdmUserName = "edit";
141
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
142
	}
143
	
144

  
145
	public static ICdmDataSource cdm_pesi_erms(){
146
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
147
		String cdmServer = "192.168.2.10";
148
		String cdmDB = "cdm_pesi_erms";
149
		String cdmUserName = "edit";
150
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
151
	}
152
	
153
	public static ICdmDataSource cdm_campanulaceae(){
154
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
155
		String cdmServer = "192.168.2.10";
156
		String cdmDB = "cdm_campanulaceae";
157
		String cdmUserName = "edit";
158
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
159
	}
160

  
161
	public static ICdmDataSource cdm_ildis_dev(){
162
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
163
		String cdmServer = "160.45.63.201";
164
		String cdmDB = "cdm_edit_ildis";
165
		String cdmUserName = "edit";
166
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
167
	}
168
	
169
//
170
//	public static ICdmDataSource cdm_ildis_production(){
171
//		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
172
//		String cdmServer = "160.45.63.151";
173
//		String cdmDB = "cdm_edit_ildis";
174
//		String cdmUserName = "edit";
175
//		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
176
//	}
177
	
178
	public static ICdmDataSource cdm_cyprus_dev(){
179
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
180
		String cdmServer = "160.45.63.201";
181
		String cdmDB = "cdm_cyprus";
182
		String cdmUserName = "edit";
183
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
184
	}
185
	
186
	public static ICdmDataSource cdm_cyprus_production(){
187
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
188
		String cdmServer = "160.45.63.151";
189
		String cdmDB = "cdm_production_cyprus";
190
		String cdmUserName = "edit";
191
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
192
	}
193

  
194
	public static ICdmDataSource cdm_cyprus_production_tunnel(){
195
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
196
		String cdmServer = "127.0.0.1";
197
		int port = 13306;
198
		String cdmDB = "cdm_production_cyprus";
199
		String cdmUserName = "edit";
200
		return makeDestination(dbType, cdmServer, cdmDB, port, cdmUserName, null);
201
	}
202
	
203
	public static ICdmDataSource cdm_cyprus_dev_tunnel(){
204
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
205
		String cdmServer = "127.0.0.1";
206
		int port = 13306;
207
		String cdmDB = "cdm_cyprus";
208
		String cdmUserName = "edit";
209
		return makeDestination(dbType, cdmServer, cdmDB, port, cdmUserName, null);
210
	}
211
	
212
	public static ICdmDataSource cdm_campanulaceae_production(){
213
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
214
		String cdmServer = "160.45.63.151";
215
		String cdmDB = "cdm_production_campanulaceae";
216
		String cdmUserName = "edit";
217
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
218
	}
219
	
220
	public static ICdmDataSource cdm_flora_malesiana_preview(){
221
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
222
		String cdmServer = "160.45.63.201";
223
		String cdmDB = "cdm_edit_flora_malesiana";
224
		String cdmUserName = "edit";
225
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
226
	}
227

  
228
	public static ICdmDataSource cdm_flora_malesiana_production(){
229
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
230
		String cdmServer = "160.45.63.151";
231
		String cdmDB = "cdm_production_flora_malesiana";
232
		String cdmUserName = "edit";
233
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
234
	}
235
	
236
	public static ICdmDataSource cdm_flora_central_africa_preview(){
237
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
238
		String cdmServer = "160.45.63.201";
239
		String cdmDB = "cdm_edit_flora_central_africa";
240
		String cdmUserName = "edit";
241
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
242
	}
243
	
244
	public static ICdmDataSource cdm_flora_central_africa_production(){
245
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
246
		String cdmServer = "160.45.63.151";
247
		String cdmDB = "cdm_production_flora_central_africa";
248
		String cdmUserName = "edit";
249
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
250
	}
251
	
252
	public static ICdmDataSource cdm_pesi_euroMed(){
253
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
254
		String cdmServer = "192.168.2.10";
255
		String cdmDB = "cdm_pesi_euroMed";
256
		String cdmUserName = "edit";
257
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
258
	}
259
	
260
	public static ICdmDataSource cdm_pesi_all(){
261
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
262
		String cdmServer = "192.168.2.10";
263
		String cdmDB = "cdm_pesi_all";
264
		String cdmUserName = "edit";
265
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
266
	}
267
	
268
	public static ICdmDataSource cdm_portal_test_localhost(){
269
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
270
		String cdmServer = "127.0.0.1";
271
		String cdmDB = "cdm_portal_test";
272
		String cdmUserName = "edit";
273
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
274
	}
275
	
276
	public static ICdmDataSource cdm_portal_test_localhost2(){
277
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
278
		String cdmServer = "127.0.0.1";
279
		String cdmDB = "cdm_portal_test2";
280
		String cdmUserName = "edit";
281
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
282
	}
283
	
284
	public static ICdmDataSource cdm_local_cichorieae(){
285
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
286
		String cdmServer = "127.0.0.1";
287
		String cdmDB = "cdm_edit_cichorieae";
288
		String cdmUserName = "edit";
289
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
290
	}
291
	
292
	public static ICdmDataSource cdm_local_dipera(){
293
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
294
		String cdmServer = "127.0.0.1";
295
		String cdmDB = "cdm_edit_diptera";
296
		String cdmUserName = "edit";
297
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
298
	}
299
	
300
	public static ICdmDataSource cdm_local_palmae(){
301
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
302
		String cdmServer = "127.0.0.1";
303
		String cdmDB = "cdm_edit_palmae";
304
		String cdmUserName = "edit";
305
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
306
	}
307
	
308
	public static ICdmDataSource cdm_local_globis(){
309
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
310
		String cdmServer = "127.0.0.1";
311
		String cdmDB = "cdm_globis";
312
		String cdmUserName = "edit";
313
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
314
	}
315
	
316
	public static ICdmDataSource cdm_local_cichorieae_d(){
317
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
318
		String cdmServer = "127.0.0.1";
319
		String cdmDB = "cdm_edit_cichorieae_d";
320
		String cdmUserName = "root";
321
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
322
	}
323
	
324
	public static ICdmDataSource cdm_local_postgres_CdmTest(){
325
		DatabaseTypeEnum dbType = DatabaseTypeEnum.PostgreSQL;
326
		String cdmServer = "127.0.0.1";
327
		String cdmDB = "CdmTest";
328
		String cdmUserName = "edit";
329
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
330
	}
331

  
332
	public static ICdmDataSource cdm_local_tdwg2010(){
333
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
334
		String cdmServer = "127.0.0.1";
335
		String cdmDB = "cdm_tdwg2010";
336
		String cdmUserName = "edit";
337
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
338
	}
339
	
340
	
341
	public static ICdmDataSource NULL(){
342
		return null;
343
	}
344
	
345
	
346
	public static ICdmDataSource localH2(){
347
		return CdmDataSource.NewH2EmbeddedInstance("cdm", "sa", "");
348
	}
349
	
350
	public static ICdmDataSource localH2(String database, String username, String filePath){
351
		return CdmDataSource.NewH2EmbeddedInstance(database, "sa", "", filePath, null);
352
	}
353
	
354
	public static ICdmDataSource localH2Salvador(){
355
		return CdmDataSource.NewH2EmbeddedInstance("salvador", "sa", "");
356
	}
357
	
358
	public static ICdmDataSource localH2Diptera(){
359
		return CdmDataSource.NewH2EmbeddedInstance("diptera", "sa", "");
360
	}
361
	
362
	
363
	public static ICdmDataSource localH2Cichorieae(){
364
		return CdmDataSource.NewH2EmbeddedInstance("cichorieae", "sa", "");
365
	}
366
	
367
	public static ICdmDataSource localH2Palmae(){
368
		return CdmDataSource.NewH2EmbeddedInstance("palmae", "sa", "");
369
	}
370
	
371
	public static ICdmDataSource localH2EuroMed(){
372
		return CdmDataSource.NewH2EmbeddedInstance("euroMed", "sa", "");
373
	}
374
	
375
	public static ICdmDataSource localH2Erms(){
376
		return CdmDataSource.NewH2EmbeddedInstance("erms", "sa", "");
377
	}
378
	
379
	public static ICdmDataSource localH2_viola(){
380
		return CdmDataSource.NewH2EmbeddedInstance("testViola", "sa", "");
381
	}
382
	
383
	public static ICdmDataSource localH2_LIAS(){
384
		return CdmDataSource.NewH2EmbeddedInstance("testLIAS", "sa", "");
385
	}
386
	
387
	public static ICdmDataSource localH2_Erythroneura(){
388
		return CdmDataSource.NewH2EmbeddedInstance("testErythroneura", "sa", "");
389
	}
390
	
391
	public static ICdmDataSource localH2_Cicad(){
392
		return CdmDataSource.NewH2EmbeddedInstance("testCicad", "sa", "");
393
	}
394
	
395
	public static ICdmDataSource localH2_ValRosandraFRIDAKey(){
396
		return CdmDataSource.NewH2EmbeddedInstance("testValRosandraFRIDAKey", "sa", "");
397
	}
398
	
399
	public static ICdmDataSource localH2_FreshwaterAquaticInsects(){
400
		return CdmDataSource.NewH2EmbeddedInstance("testFreshwaterAquaticInsects", "sa", "");
401
	}
402
	
403
	public static ICdmDataSource cdm_portal_test_pollux(){
404
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
405
		String cdmServer = "192.168.2.11";
406
		String cdmDB = "cdm_portal_test";
407
		String cdmUserName = "edit";
408
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
409
	}
410

  
411
	public static ICdmDataSource cdm_algaterra_preview(){
412
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
413
		String cdmServer = "160.45.63.201";
414
		String cdmDB = "cdm_edit_algaterra"; 
415
		String cdmUserName = "edit";
416
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
417
	}
418
	
419
	public static ICdmDataSource cdm_edit_cichorieae_PG(){
420
		DatabaseTypeEnum dbType = DatabaseTypeEnum.PostgreSQL;
421
		String cdmServer = "127.0.0.1";
422
		String cdmDB = "cdm_edit_cichorieae_a"; 
423
		String cdmUserName = "edit";
424
		int port = 15432;
425
		return makeDestination(dbType, cdmServer, cdmDB, port, cdmUserName, null);
426
	}
427

  
428
	public static ICdmDataSource cdm_cichorieae_preview(){
429
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
430
		String cdmServer = "160.45.63.201";
431
		String cdmDB = "cdm_edit_cichorieae"; 
432
		String cdmUserName = "edit";
433
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
434
	}
435
	
436
	public static ICdmDataSource cdm_production_cichorieae(){
437
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
438
		String cdmServer = "160.45.63.151";
439
//		String cdmServer = "127.0.0.1";
440
		String cdmDB = "cdm_production_cichorieae"; 
441
		String cdmUserName = "edit";
442
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
443
	}
444
	
445
	public static ICdmDataSource cdm_production_palmae(){
446
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
447
		String cdmServer = "160.45.63.151";
448
		String cdmDB = "cdm_production_palmae"; 
449
		String cdmUserName = "edit";
450
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
451
	}
452
	
453
	
454
	public static ICdmDataSource cdm_production_diptera(){
455
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
456
		String cdmServer = "160.45.63.151";
457
		String cdmDB = "cdm_production_diptera"; 
458
		String cdmUserName = "edit";
459
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
460
	}
461
	
462
	public static ICdmDataSource local_cdm_edit_cichorieae_a(){
463
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
464
		String cdmServer = "127.0.0.1";
465
		String cdmDB = "cdm_edit_cichorieae_a"; 
466
		String cdmUserName = "edit";
467
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
468
	}
469
	
470
	public static ICdmDataSource local_cdm_edit_cichorieae_b(){
471
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
472
		String cdmServer = "127.0.0.1";
473
		String cdmDB = "cdm_edit_cichorieae_b"; 
474
		String cdmUserName = "edit";
475
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
476
	}
477

  
478
	public static ICdmDataSource cdm_edit_palmae_a(){
479
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
480
		String cdmServer = "192.168.2.10";
481
		String cdmDB = "cdm_edit_palmae_a";
482
		String cdmUserName = "edit";
483
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
484
	}
485

  
486
	public static ICdmDataSource cdm_edit_diptera_preview_B(){
487
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
488
		String cdmServer = "127.0.0.1";
489
		String cdmDB = "cdm_edit_diptera_b"; 
490
		String cdmUserName = "edit";
491
		int port = 13306;
492
		return makeDestination(dbType, cdmServer, cdmDB, port, cdmUserName, null);
493
	}
494
	
495
	public static ICdmDataSource cdm_edit_cichorieae_preview(){
496
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
497
		String cdmServer = "127.0.0.1";
498
		String cdmDB = "cdm_edit_cichorieae"; 
499
		String cdmUserName = "edit";
500
		int port = 13306;
501
		return makeDestination(dbType, cdmServer, cdmDB, port, cdmUserName, null);
502
	}
503

  
504
	public static ICdmDataSource cdm_edit_palmae_preview(){
505
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
506
		String cdmServer = "127.0.0.1";
507
		String cdmDB = "cdm_edit_palmae"; 
508
		String cdmUserName = "edit";
509
		int port = 13306;
510
		return makeDestination(dbType, cdmServer, cdmDB, port, cdmUserName, null);
511
	}		
512
	
513
	public static ICdmDataSource cdm_edit_salvador(){
514
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
515
		String cdmServer = "192.168.2.10";
516
		String cdmDB = "cdm_edit_salvador"; 
517
		String cdmUserName = "edit";
518
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
519
	}
520
	
521
	public static ICdmDataSource cdm_import_salvador() {
522
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
523
		String cdmServer = "192.168.2.10";
524
		String cdmDB = "cdm_import_salvador"; 
525
		String cdmUserName = "edit";
526
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
527
	}
528
	
529
	public static ICdmDataSource cdm_salvador_production() {
530
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
531
		String cdmServer = "192.168.2.10";
532
		String cdmDB = "salvador_cdm"; 
533
		String cdmUserName = "salvador";
534
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
535
	}
536
	
537
	
538
//	public static ICdmDataSource LAPTOP_HP(){
539
//		DatabaseTypeEnum dbType = DatabaseTypeEnum.SqlServer2005;
540
//		String cdmServer = "LAPTOPHP";
541
//		String cdmDB = "cdmTest"; 
542
//		String cdmUserName = "edit";
543
//		return makeDestination(cdmServer, cdmDB, -1, cdmUserName, null);
544
//	}
545
	
546
	
547

  
548
	 
549
	/**
550
	 * initializes source
551
	 * TODO only supports MySQL and PostgreSQL
552
	 * 
553
	 * @param dbType
554
	 * @param cdmServer
555
	 * @param cdmDB
556
	 * @param port
557
	 * @param cdmUserName
558
	 * @param pwd
559
	 * @return
560
	 */
561
	private static ICdmDataSource makeDestination(DatabaseTypeEnum dbType, String cdmServer, String cdmDB, int port, String cdmUserName, String pwd ){
562
		//establish connection
563
		pwd = AccountStore.readOrStorePassword(cdmServer, cdmDB, cdmUserName, pwd);
564
		ICdmDataSource destination;
565
		if(dbType.equals(DatabaseTypeEnum.MySQL)){
566
			destination = CdmDataSource.NewMySqlInstance(cdmServer, cdmDB, port, cdmUserName, pwd, null);			
567
		} else if(dbType.equals(DatabaseTypeEnum.PostgreSQL)){
568
			destination = CdmDataSource.NewPostgreSQLInstance(cdmServer, cdmDB, port, cdmUserName, pwd, null);			
569
		} else {
570
			//TODO others
571
			throw new RuntimeException("Unsupported DatabaseType");
572
		}
573
		return destination;
574

  
575
	}
576

  
577

  
578
	/**
579
	 * Accepts a string array and tries to find a method returning an ICdmDataSource with 
580
	 * the name of the given first string in the array
581
	 * 
582
	 * @param args
583
	 * @return
584
	 */
585
	public static ICdmDataSource chooseDestination(String[] args) {
586
		if(args == null)
587
			return null;
588
		
589
		if(args.length != 1)
590
			return null;
591
		
592
		String possibleDestination = args[0];
593
		
594
		Method[] methods = CdmDestinations.class.getMethods();
595
		
596
		for (Method method : methods){
597
			if(method.getName().equals(possibleDestination)){
598
				try {
599
					return (ICdmDataSource) method.invoke(null, null);
600
				} catch (IllegalArgumentException e) {
601
					// TODO Auto-generated catch block
602
					e.printStackTrace();
603
				} catch (IllegalAccessException e) {
604
					// TODO Auto-generated catch block
605
					e.printStackTrace();
606
				} catch (InvocationTargetException e) {
607
					// TODO Auto-generated catch block
608
					e.printStackTrace();
609
				}
610
			}
611
		}
612
		return null;
613
	}
614

  
615
}
616

  
cdm-pesi/src/main/java/eu/etaxonomy/cdm/app/common/ImportUtils.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.common;
11

  
12
import eu.etaxonomy.cdm.common.AccountStore;
13
import eu.etaxonomy.cdm.io.common.Source;
14

  
15
/**
16
 * @author a.babadshanjan
17
 * @created 12.05.2009
18
 *
19
 */
20
public class ImportUtils {
21
	
22
	/**
23
	 * Initializes the source.
24
	 * @param dbms
25
	 * @param strServer
26
	 * @param strDB
27
	 * @param port
28
	 * @param userName
29
	 * @param pwd
30
	 * @return the source
31
	 */
32
	public static Source makeSource(String dbms, String strServer, String strDB, int port, String userName, String pwd ){
33
		//establish connection
34
		Source source = null;
35
		source = new Source(dbms, strServer, strDB);
36
		source.setPort(port);
37
			
38
		pwd = AccountStore.readOrStorePassword(dbms, strServer, userName, pwd);
39
		source.setUserAndPwd(userName, pwd);
40
		// write pwd to account store
41
		return source;
42
	}
43

  
44
}
cdm-pesi/src/main/java/eu/etaxonomy/cdm/app/common/TestDatabase.java
1
/**
2
* Copyright (C) 2008 EDIT
3
* European Distributed Institute of Taxonomy 
4
* http://www.e-taxonomy.eu
5
*/
6

  
7
package eu.etaxonomy.cdm.app.common;
8

  
9
import java.util.ArrayList;
10
import java.util.GregorianCalendar;
11
import java.util.List;
12

  
13
import org.apache.log4j.Logger;
14
import org.springframework.transaction.TransactionStatus;
15

  
16
import eu.etaxonomy.cdm.api.application.CdmApplicationController;
17
import eu.etaxonomy.cdm.common.AccountStore;
18
import eu.etaxonomy.cdm.database.CdmDataSource;
19
import eu.etaxonomy.cdm.database.DbSchemaValidation;
20
import eu.etaxonomy.cdm.database.ICdmDataSource;
21
import eu.etaxonomy.cdm.io.jaxb.DataSet;
22
import eu.etaxonomy.cdm.model.agent.AgentBase;
23
import eu.etaxonomy.cdm.model.agent.Institution;
24
import eu.etaxonomy.cdm.model.agent.InstitutionalMembership;
25
import eu.etaxonomy.cdm.model.agent.Person;
26
import eu.etaxonomy.cdm.model.common.AnnotatableEntity;
27
import eu.etaxonomy.cdm.model.common.DefinedTermBase;
28
import eu.etaxonomy.cdm.model.common.TimePeriod;
29
import eu.etaxonomy.cdm.model.common.VersionableEntity;
30
import eu.etaxonomy.cdm.model.description.Feature;
31
import eu.etaxonomy.cdm.model.description.IndividualsAssociation;
32
import eu.etaxonomy.cdm.model.description.QuantitativeData;
33
import eu.etaxonomy.cdm.model.description.StatisticalMeasure;
34
import eu.etaxonomy.cdm.model.description.StatisticalMeasurementValue;
35
import eu.etaxonomy.cdm.model.description.TaxonDescription;
36
import eu.etaxonomy.cdm.model.description.TaxonInteraction;
37
import eu.etaxonomy.cdm.model.description.TaxonNameDescription;
38
import eu.etaxonomy.cdm.model.location.NamedAreaType;
39
import eu.etaxonomy.cdm.model.location.WaterbodyOrCountry;
40
import eu.etaxonomy.cdm.model.name.BotanicalName;
41
import eu.etaxonomy.cdm.model.name.NomenclaturalCode;
42
import eu.etaxonomy.cdm.model.name.Rank;
43
import eu.etaxonomy.cdm.model.name.TaxonNameBase;
44
import eu.etaxonomy.cdm.model.occurrence.Specimen;
45
import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
46
import eu.etaxonomy.cdm.model.reference.Reference;
47
import eu.etaxonomy.cdm.model.reference.ReferenceFactory;
48
import eu.etaxonomy.cdm.model.taxon.Synonym;
49
import eu.etaxonomy.cdm.model.taxon.SynonymRelationshipType;
50
import eu.etaxonomy.cdm.model.taxon.Taxon;
51
import eu.etaxonomy.cdm.model.taxon.TaxonBase;
52
import eu.etaxonomy.cdm.model.taxon.TaxonNode;
53
import eu.etaxonomy.cdm.model.taxon.Classification;
54

  
55
/**
56
 * @author a.babadshanjan
57
 * @created 28.10.2008
58
 */
59
public class TestDatabase {
60

  
61
	private static final String server = "192.168.2.10";
62
	private static final String username = "edit";
63

  
64
	private static final Logger logger = Logger.getLogger(TestDatabase.class);
65

  
66
	public static ICdmDataSource CDM_DB(String dbname) {
67
		
68
		logger.info("Setting DB " + dbname);
69
		String password = AccountStore.readOrStorePassword(dbname, server, username, null);
70
		ICdmDataSource datasource = CdmDataSource.NewMySqlInstance(server, dbname, username, password, NomenclaturalCode.ICBN);
71
		return datasource;
72
	}
73
	
74
    public static CdmApplicationController 
75
    initDb(ICdmDataSource db, DbSchemaValidation dbSchemaValidation, boolean omitTermLoading) {
76
    	
77
		logger.info("Initializing database '" + db.getName() + "'");
78
		
79
		CdmApplicationController appCtrInit = null;
80
		appCtrInit = CdmApplicationController.NewInstance(db, dbSchemaValidation, omitTermLoading);
81
		
82
		return appCtrInit;
83
    }
84
    
85
	public static void loadTestData(String dbname, CdmApplicationController appCtr) {
86
    	
87
		logger.info("Loading test data into " + dbname);
88
		
89
		TransactionStatus txStatus = appCtr.startTransaction();
90
		DataSet dataSet = buildDataSet();
91
		
92
		appCtr.getTermService().save(dataSet.getTerms());
93
		appCtr.getTaxonService().save(dataSet.getTaxonBases());
94

  
95
		appCtr.commitTransaction(txStatus);
96
		appCtr.close();
97
    }
98
    
99
	/**
100
	 * This method constructs a small sample classification to test JAXB marshaling.
101
	 * The sample tree contains four taxa. The root taxon has two children taxa, and
102
	 * there is one "free" taxon without a parent and children.
103
	 */
104
	private static DataSet buildDataSet() {
105

  
106
		List<AgentBase> agents = new ArrayList<AgentBase>();
107
	    List<VersionableEntity> agentData = new ArrayList<VersionableEntity>();
108
	    //List<Agent> agentData = new ArrayList<Agent>();
109
	    
110
	    //List<TermBase> terms = new ArrayList<TermBase>();
111
	    List<DefinedTermBase> terms = new ArrayList<DefinedTermBase>();
112
	    List<Reference> references = new ArrayList<Reference>();
113
	    List<TaxonNameBase> taxonomicNames = new ArrayList<TaxonNameBase>();
114
	    List<TaxonBase> taxonBases = new ArrayList<TaxonBase>();
115
	    
116
	    List<Feature> features = new ArrayList<Feature>();
117
	    
118
	    Feature feature1 = Feature.BIOLOGY_ECOLOGY();
119
	    
120
	    TaxonNameDescription taxNameDescription = TaxonNameDescription.NewInstance();
121
	    taxNameDescription.addFeature(feature1);
122
	    QuantitativeData element = QuantitativeData.NewInstance();
123
	    StatisticalMeasurementValue statisticalValue = StatisticalMeasurementValue.NewInstance();
124
	    statisticalValue.setType(StatisticalMeasure.MAX());
125
	    statisticalValue.setValue((float) 2.1);
126
	    element.addStatisticalValue(statisticalValue);
127
	    taxNameDescription.addElement(element);
128
	    
129
	    SpecimenOrObservationBase specimen = Specimen.NewInstance();
130
	    
131
	    specimen.setIndividualCount(12);
132
	    
133
	    
134
	    Feature featureIndAss = Feature.INDIVIDUALS_ASSOCIATION();
135
	    TaxonNameDescription newTaxNameDesc = TaxonNameDescription.NewInstance();
136
	    newTaxNameDesc.addFeature(featureIndAss);
137
	    IndividualsAssociation indAss = IndividualsAssociation.NewInstance();
138
	    indAss.setAssociatedSpecimenOrObservation(specimen);
139
	    
140
	    newTaxNameDesc.addElement(indAss);
141
	    
142
	    
143
	    
144
	    
145
//	    List<Synonym> synonyms = new ArrayList<Synonym>();
146
	    List<AnnotatableEntity> homotypicalGroups;
147

  
148
		Reference citRef, sec;
149
		BotanicalName name1, name2, name21, nameRoot1, nameFree, synName11, synName12, synName2, synNameFree;
150
		BotanicalName nameRoot2, nameR2_1, nameR2_2;
151
		Taxon child1, child2, child21, root1T, root2T, freeT;
152
		Taxon childR2_1, childR2_2;
153
		TaxonNode child1Node, child2Node, child21Node, root1TNode, root2TNode, freeTNode;
154
		TaxonNode childR2_1Node, childR2_2Node;
155
		Classification taxTree, taxTree2;
156
		Synonym syn11, syn12, syn2, synFree;
157
		Rank rankSpecies, rankSubspecies, rankGenus;
158

  
159
		// agents 
160
		// - persons, institutions 
161

  
162
		Person linne = new Person("Carl", "Linne", "L.");
163
		linne.setTitleCache("Linne & Karl", true);
164
		GregorianCalendar birth = new GregorianCalendar(1707, 4, 23);
165
		GregorianCalendar death = new GregorianCalendar(1778, 0, 10);
166
		TimePeriod period = TimePeriod.NewInstance(birth, death);
167
		linne.setLifespan(period);
168

  
169
//		Keyword keyword = Keyword.NewInstance("plantarum", "lat", "");
170
//		linne.addKeyword(keyword);
171

  
172
		Institution institute = Institution.NewInstance();
173

  
174
		agents.add(linne);
175
		agents.add(institute);
176

  
177
		// agent data
178
		// - contacts, addresses, memberships
179

  
180
		//Contact contact1 = new Contact();
181
		//contact1.setEmail("someone@somewhere.org");
182
		InstitutionalMembership membership 
183
		= new InstitutionalMembership(institute, linne, period, "Biodiversity", "Head");
184
		//agentData.add(contact1);
185

  
186
		agentData.add(membership);
187

  
188
		// terms
189
		// - ranks, keywords
190

  
191
		rankSpecies = Rank.SPECIES();
192
		rankSubspecies = Rank.SUBSPECIES();
193
		rankGenus = Rank.GENUS();
194
		
195
//		terms.add(keyword);
196
		
197
        // taxonomic names
198
		
199
		nameRoot1 = BotanicalName.NewInstance(rankGenus,"Calendula",null,null,null,linne,null,"p.100", null);
200
		nameRoot1.addDescription(taxNameDescription);
201
		nameRoot1.addDescription(newTaxNameDesc);
202
		name1 = BotanicalName.NewInstance(rankSpecies,"Calendula",null,"arvensis",null,linne,null,"p.1", null);
203
		synName11 = BotanicalName.NewInstance(rankSpecies,"Caltha",null,"arvensis",null,linne,null,"p.11", null);
204
		synName12 = BotanicalName.NewInstance(rankSpecies,"Calendula",null,"sancta",null,linne,null,"p.12", null);
205
		
206
		name2 = BotanicalName.NewInstance(rankSpecies,"Calendula",null,"lanzae",null,linne,null,"p.2", null);
207
		synName2 = BotanicalName.NewInstance(rankSpecies,"Calendula",null,"echinata",null,linne,null,"p.2", null);
208
		
209
		name21 = BotanicalName.NewInstance(rankSubspecies,"Calendula",null,"lanzea","something",linne,null,"p.1", null);
210
		//name211 = BotanicalName.NewInstance(rankSpecies,"Calendula",null,"lanzea",null,linne,null,"p.1", null);
211
		//name212 = BotanicalName.NewInstance(rankSpecies,"Calendula",null,"lanzea",null,linne,null,"p.1", null);
212
		
213
		nameRoot2 = 
214
			BotanicalName.NewInstance(rankGenus,"Sonchus",null,null,null,linne,null,"p.200", null);
215
		nameR2_1 = BotanicalName.NewInstance(rankSpecies,"Sonchus",null,"child1",null,linne,null,"p.1", null);
216
		nameR2_2 = BotanicalName.NewInstance(rankSpecies,"Sonchus",null,"child2",null,linne,null,"p.2", null);
217
		
218
		nameFree = BotanicalName.NewInstance(rankSpecies,"Cichorium",null,"intybus",null,linne,null,"p.200", null);
219
		synNameFree = BotanicalName.NewInstance(rankSpecies,"Cichorium",null,"balearicum",null,linne,null,"p.2", null);
220

  
221
		taxonomicNames.add(nameRoot1);
222
		taxonomicNames.add(name1);
223
		taxonomicNames.add(synName11);
224
		taxonomicNames.add(synName12);
225
		taxonomicNames.add(name2);
226
		taxonomicNames.add(name21);
227
		taxonomicNames.add(synName2);
228
		taxonomicNames.add(nameFree);
229
		taxonomicNames.add(synNameFree);
230
		taxonomicNames.add(nameRoot2);
231
		
232
        // references
233
		ReferenceFactory refFactory = ReferenceFactory.newInstance();
234
		sec = refFactory.newBook();
235
		sec.setAuthorTeam(linne);
236
		sec.setTitleCache("Plant Specification & Taxonomy", true);
237
		references.add(sec);
238
		
239
		citRef = refFactory.newDatabase();
240
		citRef.setAuthorTeam(linne);
241
		citRef.setTitleCache("BioCASE", true);
242
		references.add(citRef);
243

  
244
		// taxa
245
		
246
		root1T = Taxon.NewInstance(nameRoot1, sec);
247
		root2T = Taxon.NewInstance(nameRoot2, sec);
248
		freeT = Taxon.NewInstance(nameFree, sec);
249
		child1 = Taxon.NewInstance(name1, sec);
250
		child2 = Taxon.NewInstance(name2, sec);
251
		child21 = Taxon.NewInstance(name21, sec);
252
		childR2_1 = Taxon.NewInstance(nameR2_1, sec);
253
		childR2_2 = Taxon.NewInstance(nameR2_2, sec);
254
		
255
		//TaxonInteractions
256
		
257
		TaxonInteraction descBase = TaxonInteraction.NewInstance();
258
		descBase.setTaxon2(root1T);
259
		Feature hostplant = Feature.HOSTPLANT();
260
		
261
		descBase.setFeature(hostplant);
262
		TaxonDescription taxDesc = TaxonDescription.NewInstance();
263
		taxDesc.addElement(descBase);
264
		root2T.addDescription(taxDesc);
265
		
266
		//locations
267
		
268
		taxDesc = TaxonDescription.NewInstance();
269
		Feature locationFeature = Feature.DISTRIBUTION();
270

  
271
		
272
		//locationFeature.
273
		WaterbodyOrCountry area = WaterbodyOrCountry.NewInstance("", "locationTest", null);
274
		area.setType(NamedAreaType.NATURAL_AREA());
275
		
276
		//WaterbodyOrCountry woC= WaterbodyOrCountry.NewInstance();
277
		area.addWaterbodyOrCountry(WaterbodyOrCountry.AFGHANISTAN());
278
		taxDesc.addGeoScope(area);
279
		taxDesc.addFeature(locationFeature);
280
		root1T.addDescription(taxDesc);
281
		
282
		
283
		// synonyms
284
		
285
		synFree = Synonym.NewInstance(synNameFree, sec);
286
		syn11 = Synonym.NewInstance(synName11, sec);
287
		syn12 = Synonym.NewInstance(synName12, sec);
288
		syn2 = Synonym.NewInstance(synName2, sec);
289
		
290
		child1.addSynonym(syn11, SynonymRelationshipType.HOMOTYPIC_SYNONYM_OF());
291
		child1.addSynonym(syn12, SynonymRelationshipType.HETEROTYPIC_SYNONYM_OF());
292
		child2.addSynonym(syn2, SynonymRelationshipType.HETEROTYPIC_SYNONYM_OF());
293
		freeT.addSynonym(synFree, SynonymRelationshipType.HETEROTYPIC_SYNONYM_OF());
294

  
295
		taxonBases.add(synFree);
296
		taxonBases.add(syn11);
297
		taxonBases.add(syn12);
298
		taxonBases.add(syn2);
299
		
300
		// taxonomic children
301
		
302
		//TODO: Adapt to classification
303
		taxTree = Classification.NewInstance("TestTree");
304
		
305
		root1TNode = taxTree.addChildTaxon(root1T, sec, null, null);
306
		child1Node = root1TNode.addChildTaxon(child1, null, null, null);
307
		child2Node = root1TNode.addChildTaxon(child2, null, null, null);
308
		child21Node = child2Node.addChildTaxon(child21, null, null, null);
309
		
310
		taxTree2 = Classification.NewInstance("TestTree2");
311
		
312
		root2TNode = taxTree2.addChildTaxon(root2T, sec, null, null);
313
		root2TNode.addChildTaxon(child1, sec, "p.1010", syn11);
314
		root2TNode.addChildTaxon(child2, null, null, null);
315
		
316
		/*
317
		root1T.addTaxonomicChild(child1, sec, "p.1010");
318
		root1T.addTaxonomicChild(child2, sec, "p.1020");
319
		child2.addTaxonomicChild(child21, sec, "p.2000");
320
				
321
		root2T.addTaxonomicChild(child1, sec, "p.1010");
322
		root2T.addTaxonomicChild(child2, sec, "p.1020");
323
		*/
324
		//
325
		
326
		
327
		taxonBases.add(root1T);
328
		taxonBases.add(root2T);
329
		taxonBases.add(freeT);
330
		taxonBases.add(child1);
331
		taxonBases.add(child2);
332
		taxonBases.add(child21);
333
		taxonBases.add(childR2_1);
334
		taxonBases.add(childR2_2);
335
		
336
		DataSet dataSet = new DataSet();
337
	
338
		logger.warn("WARNING: TestDatabase has been commented in parts. Mainly, must be adapted to classification.");
339
		
340
		dataSet.setTerms(terms);
341
		dataSet.setAgents(agents);
342
//		dataSet.setAgentData(agentData); //TODO
343
		dataSet.setReferences(references);
344
		dataSet.setTaxonomicNames(taxonomicNames);
345
		dataSet.setTaxonBases(taxonBases);
346
		
347
		
348
		return dataSet;
349

  
350
	}
351
}
cdm-pesi/src/main/java/eu/etaxonomy/cdm/app/common/TreeCreator.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.common;
11

  
12
import java.util.HashMap;
13
import java.util.Map;
14
import java.util.UUID;
15

  
16
import org.apache.log4j.Logger;
17

  
18
import eu.etaxonomy.cdm.model.description.Feature;
19
import eu.etaxonomy.cdm.model.description.FeatureNode;
20
import eu.etaxonomy.cdm.model.description.FeatureTree;
21

  
22
/**
23
 * @author a.mueller
24
 * @created 03.07.2008
25
 * @version 1.0
26
 */
27
public class TreeCreator {
28
	@SuppressWarnings("unused")
29
	private static final Logger logger = Logger.getLogger(TreeCreator.class);
30

  
31
	public static FeatureTree flatTree(UUID featureTreeUuid, Map<Integer, Feature> featureMap, Object[] featureKeyList){
32
		FeatureTree result = FeatureTree.NewInstance(featureTreeUuid);
33
		FeatureNode root = result.getRoot();
34
		
35
		for (Object featureKey : featureKeyList){
36
			Feature feature = featureMap.get(featureKey);
37
			if (feature != null){
38
				FeatureNode child = FeatureNode.NewInstance(feature);
39
				root.addChild(child);	
40
			}
41
		}
42
		return result;
43
	}
44
	
45
	
46
	/**
47
	 * @param args
48
	 */
49
	public static void main(String[] args) {
50
		Map<Integer, Feature>  map = new HashMap<Integer, Feature>(null);
51
		map.put(1, Feature.DISTRIBUTION());
52
		map.put(2, Feature.ECOLOGY());
53

  
54
		Object[] strFeatureList = new Integer[]{1,2}; 
55

  
56
		FeatureTree tree = TreeCreator.flatTree(UUID.randomUUID(), map, strFeatureList);
57
		System.out.println(tree.getRootChildren());
58
	}
59
}
cdm-pesi/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
}
cdm-pesi/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.common.BerlinModelSources;
18
import eu.etaxonomy.cdm.app.common.CdmDestinations;
19
import eu.etaxonomy.cdm.app.common.TreeCreator;
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
		
... This diff was truncated because it exceeds the maximum size that can be displayed.

Also available in: Unified diff