Project

General

Profile

Download (19 KB) Statistics
| Branch: | Revision:
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 = "root";
51
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
52
	}
53
	
54
	public static ICdmDataSource cdm_test_local_mysql(){
55
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
56
		String cdmServer = "127.0.0.1";
57
		String cdmDB = "cdm_test"; 
58
		String cdmUserName = "edit";
59
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
60
	}
61
	
62
	
63
	public static ICdmDataSource cdm_test_local_mysql_moose(){
64
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
65
		String cdmServer = "127.0.0.1";
66
		String cdmDB = "moose"; 
67
		String cdmUserName = "root";
68
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
69
	}
70
	
71
	public static ICdmDataSource cdm_test_local_mysql_standardliste(){
72
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
73
		String cdmServer = "127.0.0.1";
74
		String cdmDB = "standardliste"; 
75
		String cdmUserName = "root";
76
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
77
	}
78
	
79

    
80
	public static ICdmDataSource cdm_test_local_mysql_dwca(){
81
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
82
		String cdmServer = "127.0.0.1";
83
		String cdmDB = "dwca"; 
84
		String cdmUserName = "edit";
85
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
86
	}
87

    
88
	
89
	public static ICdmDataSource cdm_test_local_mysql_fdac(){
90
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
91
		String cdmServer = "127.0.0.1";
92
		String cdmDB = "fdac"; 
93
		String cdmUserName = "edit";
94
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
95
	}
96
	
97
	public static ICdmDataSource cdm_test_local_mysql_test(){
98
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
99
		String cdmServer = "127.0.0.1";
100
		String cdmDB = "test"; 
101
		String cdmUserName = "edit";
102
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
103
	}
104
	
105
	public static ICdmDataSource cdm_corvidae_dev(){
106
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
107
		String cdmServer = "160.45.63.201";
108
		String cdmDB = "cdm_corvidae"; 
109
		String cdmUserName = "edit";
110
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
111
	}
112

    
113
	public static ICdmDataSource cdm_ildis_dev(){
114
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
115
		String cdmServer = "160.45.63.201";
116
		String cdmDB = "cdm_edit_ildis";
117
		String cdmUserName = "edit";
118
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
119
	}
120
	
121
//
122
//	public static ICdmDataSource cdm_ildis_production(){
123
//		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
124
//		String cdmServer = "160.45.63.171";
125
//		String cdmDB = "cdm_edit_ildis";
126
//		String cdmUserName = "edit";
127
//		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
128
//	}
129
	
130

    
131
	public static ICdmDataSource cdm_redlist_moose_dev(){
132
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
133
		String cdmServer = "160.45.63.201";
134
		String cdmDB = "cdm_mt_moose";
135
		String cdmUserName = "edit";
136
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
137
	}
138
	
139
	public static ICdmDataSource cdm_redlist_standardlist_dev(){
140
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
141
		String cdmServer = "160.45.63.201";
142
		String cdmDB = "cdm_mt_standardliste";
143
		String cdmUserName = "edit";
144
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
145
	}
146
	
147
	public static ICdmDataSource cdm_cyprus_dev(){
148
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
149
		String cdmServer = "160.45.63.201";
150
		String cdmDB = "cdm_cyprus";
151
		String cdmUserName = "edit";
152
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
153
	}
154
	
155
	public static ICdmDataSource cdm_cyprus_production(){
156
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
157
		String cdmServer = "160.45.63.171";
158
		String cdmDB = "cdm_production_cyprus";
159
		String cdmUserName = "edit";
160
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
161
	}
162

    
163
	public static ICdmDataSource cdm_cyprus_production_tunnel(){
164
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
165
		String cdmServer = "127.0.0.1";
166
		int port = 13306;
167
		String cdmDB = "cdm_production_cyprus";
168
		String cdmUserName = "edit";
169
		return makeDestination(dbType, cdmServer, cdmDB, port, cdmUserName, null);
170
	}
171
	
172
	public static ICdmDataSource cdm_cyprus_dev_tunnel(){
173
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
174
		String cdmServer = "127.0.0.1";
175
		int port = 13306;
176
		String cdmDB = "cdm_cyprus";
177
		String cdmUserName = "edit";
178
		return makeDestination(dbType, cdmServer, cdmDB, port, cdmUserName, null);
179
	}
180
	
181
	public static ICdmDataSource cdm_campanulaceae_production(){
182
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
183
		String cdmServer = "160.45.63.171";
184
		String cdmDB = "cdm_production_campanulaceae";
185
		String cdmUserName = "edit";
186
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
187
	}
188
	
189
	public static ICdmDataSource cdm_flora_malesiana_preview(){
190
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
191
		String cdmServer = "160.45.63.201";
192
		String cdmDB = "cdm_edit_flora_malesiana";
193
		String cdmUserName = "edit";
194
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
195
	}
196

    
197
	public static ICdmDataSource cdm_flora_malesiana_production(){
198
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
199
		String cdmServer = "160.45.63.171";
200
		String cdmDB = "cdm_production_flora_malesiana";
201
		String cdmUserName = "edit";
202
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
203
	}
204
	
205
	public static ICdmDataSource cdm_flora_central_africa_preview(){
206
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
207
		String cdmServer = "160.45.63.201";
208
		String cdmDB = "cdm_edit_flora_central_africa";
209
		String cdmUserName = "edit";
210
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
211
	}
212
	
213
	public static ICdmDataSource cdm_flora_central_africa_production(){
214
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
215
		String cdmServer = "160.45.63.171";
216
		String cdmDB = "cdm_production_flora_central_africa";
217
		String cdmUserName = "edit";
218
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
219
	}
220
	
221
	public static ICdmDataSource cdm_pesi_euroMed(){
222
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
223
		String cdmServer = "192.168.2.10";
224
		String cdmDB = "cdm_pesi_euroMed";
225
		String cdmUserName = "edit";
226
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
227
	}
228
	
229
	public static ICdmDataSource cdm_pesi_all(){
230
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
231
		String cdmServer = "192.168.2.10";
232
		String cdmDB = "cdm_pesi_all";
233
		String cdmUserName = "edit";
234
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
235
	}
236
	
237
	public static ICdmDataSource cdm_portal_test_localhost(){
238
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
239
		String cdmServer = "127.0.0.1";
240
		String cdmDB = "cdm_portal_test";
241
		String cdmUserName = "edit";
242
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
243
	}
244
	
245
	public static ICdmDataSource cdm_portal_test_localhost2(){
246
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
247
		String cdmServer = "127.0.0.1";
248
		String cdmDB = "cdm_portal_test2";
249
		String cdmUserName = "edit";
250
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
251
	}
252
	
253
	public static ICdmDataSource cdm_local_cichorieae(){
254
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
255
		String cdmServer = "127.0.0.1";
256
		String cdmDB = "cdm_edit_cichorieae";
257
		String cdmUserName = "edit";
258
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
259
	}
260
	
261
	public static ICdmDataSource cdm_local_dipera(){
262
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
263
		String cdmServer = "127.0.0.1";
264
		String cdmDB = "cdm_edit_diptera";
265
		String cdmUserName = "edit";
266
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
267
	}
268
	
269
	public static ICdmDataSource cdm_local_palmae(){
270
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
271
		String cdmServer = "127.0.0.1";
272
		String cdmDB = "cdm_edit_palmae";
273
		String cdmUserName = "edit";
274
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
275
	}
276
	
277
	public static ICdmDataSource cdm_local_globis(){
278
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
279
		String cdmServer = "127.0.0.1";
280
		String cdmDB = "cdm_globis";
281
		String cdmUserName = "edit";
282
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
283
	}
284

    
285
	public static ICdmDataSource cdm_local_postgres_CdmTest(){
286
		DatabaseTypeEnum dbType = DatabaseTypeEnum.PostgreSQL;
287
		String cdmServer = "127.0.0.1";
288
		String cdmDB = "CdmTest";
289
		String cdmUserName = "edit";
290
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
291
	}
292

    
293
	public static ICdmDataSource cdm_local_tdwg2010(){
294
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
295
		String cdmServer = "127.0.0.1";
296
		String cdmDB = "cdm_tdwg2010";
297
		String cdmUserName = "edit";
298
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
299
	}
300
	
301
	
302
	public static ICdmDataSource NULL(){
303
		return null;
304
	}
305
	
306
	
307
	public static ICdmDataSource localH2(){
308
		return CdmDataSource.NewH2EmbeddedInstance("cdm", "sa", "");
309
	}
310
	
311
	public static ICdmDataSource localH2(String database, String username, String filePath){
312
		return CdmDataSource.NewH2EmbeddedInstance(database, "sa", "", filePath, null);
313
	}
314
	
315
	public static ICdmDataSource localH2Salvador(){
316
		return CdmDataSource.NewH2EmbeddedInstance("salvador", "sa", "");
317
	}
318
	
319
	public static ICdmDataSource localH2Diptera(){
320
		return CdmDataSource.NewH2EmbeddedInstance("diptera", "sa", "");
321
	}
322
	
323
	
324
	public static ICdmDataSource localH2Cichorieae(){
325
		return CdmDataSource.NewH2EmbeddedInstance("cichorieae", "sa", "");
326
	}
327
	
328
	public static ICdmDataSource localH2Palmae(){
329
		return CdmDataSource.NewH2EmbeddedInstance("palmae", "sa", "");
330
	}
331
	
332
	public static ICdmDataSource localH2EuroMed(){
333
		return CdmDataSource.NewH2EmbeddedInstance("euroMed", "sa", "");
334
	}
335
	
336
	public static ICdmDataSource localH2Erms(){
337
		return CdmDataSource.NewH2EmbeddedInstance("erms", "sa", "");
338
	}
339
	
340
	public static ICdmDataSource localH2_viola(){
341
		return CdmDataSource.NewH2EmbeddedInstance("testViola", "sa", "");
342
	}
343
	
344
	public static ICdmDataSource localH2_LIAS(){
345
		return CdmDataSource.NewH2EmbeddedInstance("testLIAS", "sa", "");
346
	}
347
	
348
	public static ICdmDataSource localH2_Erythroneura(){
349
		return CdmDataSource.NewH2EmbeddedInstance("testErythroneura", "sa", "");
350
	}
351
	
352
	public static ICdmDataSource localH2_Cicad(){
353
		return CdmDataSource.NewH2EmbeddedInstance("testCicad", "sa", "");
354
	}
355
	
356
	public static ICdmDataSource localH2_ValRosandraFRIDAKey(){
357
		return CdmDataSource.NewH2EmbeddedInstance("testValRosandraFRIDAKey", "sa", "");
358
	}
359
	
360
	public static ICdmDataSource localH2_FreshwaterAquaticInsects(){
361
		return CdmDataSource.NewH2EmbeddedInstance("testFreshwaterAquaticInsects", "sa", "");
362
	}
363
	
364
	public static ICdmDataSource cdm_portal_test_pollux(){
365
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
366
		String cdmServer = "192.168.2.11";
367
		String cdmDB = "cdm_portal_test";
368
		String cdmUserName = "edit";
369
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
370
	}
371

    
372
	public static ICdmDataSource cdm_algaterra_preview(){
373
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
374
		String cdmServer = "160.45.63.201";
375
		String cdmDB = "cdm_edit_algaterra"; 
376
		String cdmUserName = "edit";
377
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
378
	}
379
	
380
	public static ICdmDataSource cdm_edit_cichorieae_local_PG(){
381
		DatabaseTypeEnum dbType = DatabaseTypeEnum.PostgreSQL;
382
		String cdmServer = "127.0.0.1";
383
		String cdmDB = "cdm_edit_cichorieae_a"; 
384
		String cdmUserName = "edit";
385
		int port = 15432;
386
		return makeDestination(dbType, cdmServer, cdmDB, port, cdmUserName, null);
387
	}
388

    
389
	public static ICdmDataSource cdm_cichorieae_preview(){
390
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
391
		String cdmServer = "160.45.63.201";
392
		String cdmDB = "cdm_edit_cichorieae"; 
393
		String cdmUserName = "edit";
394
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
395
	}
396
	
397
	public static ICdmDataSource cdm_production_cichorieae(){
398
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
399
		String cdmServer = "160.45.63.171";
400
//		String cdmServer = "127.0.0.1";
401
		String cdmDB = "cdm_production_cichorieae"; 
402
		String cdmUserName = "edit";
403
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
404
	}
405
	
406
	public static ICdmDataSource cdm_production_palmae(){
407
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
408
		String cdmServer = "160.45.63.171";
409
		String cdmDB = "cdm_production_palmae"; 
410
		String cdmUserName = "edit";
411
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
412
	}
413
	
414
	
415
	public static ICdmDataSource cdm_production_diptera(){
416
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
417
		String cdmServer = "160.45.63.171";
418
		String cdmDB = "cdm_production_diptera"; 
419
		String cdmUserName = "edit";
420
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
421
	}
422
	
423
	public static ICdmDataSource local_cdm_edit_cichorieae_a(){
424
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
425
		String cdmServer = "127.0.0.1";
426
		String cdmDB = "cdm_edit_cichorieae_a"; 
427
		String cdmUserName = "edit";
428
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
429
	}
430

    
431
	public static ICdmDataSource cdm_edit_palmae_a(){
432
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
433
		String cdmServer = "192.168.2.10";
434
		String cdmDB = "cdm_edit_palmae_a";
435
		String cdmUserName = "edit";
436
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
437
	}
438
	
439
	public static ICdmDataSource cdm_edit_cichorieae_preview(){
440
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
441
		String cdmServer = "127.0.0.1";
442
		String cdmDB = "cdm_edit_cichorieae"; 
443
		String cdmUserName = "edit";
444
		int port = 13306;
445
		return makeDestination(dbType, cdmServer, cdmDB, port, cdmUserName, null);
446
	}
447
	
448
	public static ICdmDataSource cdm_edit_cichorieae_preview_direct(){
449
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
450
		String cdmServer = "160.45.63.201";
451
		String cdmDB = "cdm_edit_cichorieae"; 
452
		String cdmUserName = "edit";
453
		int port = 3306;
454
		return makeDestination(dbType, cdmServer, cdmDB, port, cdmUserName, null);
455
	}
456
	
457
	public static ICdmDataSource cdm_edit_cichorieae_integration(){
458
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
459
		String cdmServer = "127.0.0.1";
460
		String cdmDB = "cdm_integration_cichorieae"; 
461
		String cdmUserName = "edit";
462
		int port = 13306;
463
		return makeDestination(dbType, cdmServer, cdmDB, port, cdmUserName, null);
464
	}
465

    
466
	public static ICdmDataSource cdm_edit_palmae_preview(){
467
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
468
		String cdmServer = "127.0.0.1";
469
		String cdmDB = "cdm_edit_palmae"; 
470
		String cdmUserName = "edit";
471
		int port = 13306;
472
		return makeDestination(dbType, cdmServer, cdmDB, port, cdmUserName, null);
473
	}		
474
	
475
	public static ICdmDataSource cdm_edit_salvador(){
476
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
477
		String cdmServer = "192.168.2.10";
478
		String cdmDB = "cdm_edit_salvador"; 
479
		String cdmUserName = "edit";
480
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
481
	}
482
	
483
	public static ICdmDataSource cdm_import_salvador() {
484
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
485
		String cdmServer = "192.168.2.10";
486
		String cdmDB = "cdm_import_salvador"; 
487
		String cdmUserName = "edit";
488
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
489
	}
490
	
491
	public static ICdmDataSource cdm_salvador_production() {
492
		DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
493
		String cdmServer = "192.168.2.10";
494
		String cdmDB = "salvador_cdm"; 
495
		String cdmUserName = "salvador";
496
		return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
497
	}
498
	
499
	
500
//	public static ICdmDataSource LAPTOP_HP(){
501
//		DatabaseTypeEnum dbType = DatabaseTypeEnum.SqlServer2005;
502
//		String cdmServer = "LAPTOPHP";
503
//		String cdmDB = "cdmTest"; 
504
//		String cdmUserName = "edit";
505
//		return makeDestination(cdmServer, cdmDB, -1, cdmUserName, null);
506
//	}
507
	
508
	
509

    
510
	 
511
	/**
512
	 * initializes source
513
	 * TODO only supports MySQL and PostgreSQL
514
	 * 
515
	 * @param dbType
516
	 * @param cdmServer
517
	 * @param cdmDB
518
	 * @param port
519
	 * @param cdmUserName
520
	 * @param pwd
521
	 * @return
522
	 */
523
	public static ICdmDataSource makeDestination(DatabaseTypeEnum dbType, String cdmServer, String cdmDB, int port, String cdmUserName, String pwd ){
524
		//establish connection
525
		pwd = AccountStore.readOrStorePassword(cdmServer, cdmDB, cdmUserName, pwd);
526
		ICdmDataSource destination;
527
		if(dbType.equals(DatabaseTypeEnum.MySQL)){
528
			destination = CdmDataSource.NewMySqlInstance(cdmServer, cdmDB, port, cdmUserName, pwd, null);			
529
		} else if(dbType.equals(DatabaseTypeEnum.PostgreSQL)){
530
			destination = CdmDataSource.NewPostgreSQLInstance(cdmServer, cdmDB, port, cdmUserName, pwd, null);			
531
		} else {
532
			//TODO others
533
			throw new RuntimeException("Unsupported DatabaseType");
534
		}
535
		return destination;
536

    
537
	}
538

    
539

    
540
	/**
541
	 * Accepts a string array and tries to find a method returning an ICdmDataSource with 
542
	 * the name of the given first string in the array
543
	 * 
544
	 * @param args
545
	 * @return
546
	 */
547
	public static ICdmDataSource chooseDestination(String[] args) {
548
		if(args == null)
549
			return null;
550
		
551
		if(args.length != 1)
552
			return null;
553
		
554
		String possibleDestination = args[0];
555
		
556
		Method[] methods = CdmDestinations.class.getMethods();
557
		
558
		for (Method method : methods){
559
			if(method.getName().equals(possibleDestination)){
560
				try {
561
					return (ICdmDataSource) method.invoke(null, null);
562
				} catch (IllegalArgumentException e) {
563
					// TODO Auto-generated catch block
564
					e.printStackTrace();
565
				} catch (IllegalAccessException e) {
566
					// TODO Auto-generated catch block
567
					e.printStackTrace();
568
				} catch (InvocationTargetException e) {
569
					// TODO Auto-generated catch block
570
					e.printStackTrace();
571
				}
572
			}
573
		}
574
		return null;
575
	}
576

    
577
}
578

    
(3-3/6)