update IPs for new db server
[cdmlib-apps.git] / app-import / 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 = "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 public static ICdmDataSource cdm_test_local_mysql_pesi(){
63 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
64 String cdmServer = "127.0.0.1";
65 String cdmDB = "cdm_test";
66 String cdmUserName = "root";
67 return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
68 }
69
70 public static ICdmDataSource cdm_test_local_mysql_pesi_test(){
71 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
72 String cdmServer = "127.0.0.1";
73 String cdmDB = "test";
74 String cdmUserName = "root";
75 return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
76 }
77
78 public static ICdmDataSource cdm_test_local_mysql_dwca(){
79 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
80 String cdmServer = "127.0.0.1";
81 String cdmDB = "dwca";
82 String cdmUserName = "edit";
83 return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
84 }
85
86
87 public static ICdmDataSource cdm_test_local_mysql_fdac(){
88 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
89 String cdmServer = "127.0.0.1";
90 String cdmDB = "fdac";
91 String cdmUserName = "edit";
92 return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
93 }
94
95 public static ICdmDataSource cdm_test_local_mysql_test(){
96 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
97 String cdmServer = "127.0.0.1";
98 String cdmDB = "test";
99 String cdmUserName = "edit";
100 return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
101 }
102
103 public static ICdmDataSource cdm_corvidae_dev(){
104 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
105 String cdmServer = "160.45.63.201";
106 String cdmDB = "cdm_corvidae";
107 String cdmUserName = "edit";
108 return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
109 }
110
111 public static ICdmDataSource cdm_ildis_dev(){
112 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
113 String cdmServer = "160.45.63.201";
114 String cdmDB = "cdm_edit_ildis";
115 String cdmUserName = "edit";
116 return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
117 }
118
119 //
120 // public static ICdmDataSource cdm_ildis_production(){
121 // DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
122 // String cdmServer = "160.45.63.171";
123 // String cdmDB = "cdm_edit_ildis";
124 // String cdmUserName = "edit";
125 // return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
126 // }
127
128
129 public static ICdmDataSource cdm_redlist_moose_dev(){
130 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
131 String cdmServer = "160.45.63.201";
132 String cdmDB = "cdm_redlist_moose";
133 String cdmUserName = "edit";
134 return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
135 }
136
137 public static ICdmDataSource cdm_redlist_standardlist_dev(){
138 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
139 String cdmServer = "160.45.63.201";
140 String cdmDB = "cdm_redlist_standardlist";
141 String cdmUserName = "edit";
142 return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
143 }
144
145 public static ICdmDataSource cdm_cyprus_dev(){
146 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
147 String cdmServer = "160.45.63.201";
148 String cdmDB = "cdm_cyprus";
149 String cdmUserName = "edit";
150 return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
151 }
152
153 public static ICdmDataSource cdm_cyprus_production(){
154 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
155 String cdmServer = "160.45.63.171";
156 String cdmDB = "cdm_production_cyprus";
157 String cdmUserName = "edit";
158 return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
159 }
160
161 public static ICdmDataSource cdm_cyprus_production_tunnel(){
162 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
163 String cdmServer = "127.0.0.1";
164 int port = 13306;
165 String cdmDB = "cdm_production_cyprus";
166 String cdmUserName = "edit";
167 return makeDestination(dbType, cdmServer, cdmDB, port, cdmUserName, null);
168 }
169
170 public static ICdmDataSource cdm_cyprus_dev_tunnel(){
171 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
172 String cdmServer = "127.0.0.1";
173 int port = 13306;
174 String cdmDB = "cdm_cyprus";
175 String cdmUserName = "edit";
176 return makeDestination(dbType, cdmServer, cdmDB, port, cdmUserName, null);
177 }
178
179 public static ICdmDataSource cdm_campanulaceae_production(){
180 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
181 String cdmServer = "160.45.63.171";
182 String cdmDB = "cdm_production_campanulaceae";
183 String cdmUserName = "edit";
184 return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
185 }
186
187 public static ICdmDataSource cdm_flora_malesiana_preview(){
188 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
189 String cdmServer = "160.45.63.201";
190 String cdmDB = "cdm_edit_flora_malesiana";
191 String cdmUserName = "edit";
192 return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
193 }
194
195 public static ICdmDataSource cdm_flora_malesiana_production(){
196 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
197 String cdmServer = "160.45.63.171";
198 String cdmDB = "cdm_production_flora_malesiana";
199 String cdmUserName = "edit";
200 return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
201 }
202
203 public static ICdmDataSource cdm_flora_central_africa_preview(){
204 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
205 String cdmServer = "160.45.63.201";
206 String cdmDB = "cdm_edit_flora_central_africa";
207 String cdmUserName = "edit";
208 return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
209 }
210
211 public static ICdmDataSource cdm_flora_central_africa_production(){
212 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
213 String cdmServer = "160.45.63.171";
214 String cdmDB = "cdm_production_flora_central_africa";
215 String cdmUserName = "edit";
216 return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
217 }
218
219 public static ICdmDataSource cdm_pesi_euroMed(){
220 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
221 String cdmServer = "192.168.2.10";
222 String cdmDB = "cdm_pesi_euroMed";
223 String cdmUserName = "edit";
224 return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
225 }
226
227 public static ICdmDataSource cdm_pesi_all(){
228 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
229 String cdmServer = "192.168.2.10";
230 String cdmDB = "cdm_pesi_all";
231 String cdmUserName = "edit";
232 return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
233 }
234
235 public static ICdmDataSource cdm_portal_test_localhost(){
236 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
237 String cdmServer = "127.0.0.1";
238 String cdmDB = "cdm_portal_test";
239 String cdmUserName = "edit";
240 return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
241 }
242
243 public static ICdmDataSource cdm_portal_test_localhost2(){
244 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
245 String cdmServer = "127.0.0.1";
246 String cdmDB = "cdm_portal_test2";
247 String cdmUserName = "edit";
248 return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
249 }
250
251 public static ICdmDataSource cdm_local_cichorieae(){
252 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
253 String cdmServer = "127.0.0.1";
254 String cdmDB = "cdm_edit_cichorieae";
255 String cdmUserName = "edit";
256 return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
257 }
258
259 public static ICdmDataSource cdm_local_dipera(){
260 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
261 String cdmServer = "127.0.0.1";
262 String cdmDB = "cdm_edit_diptera";
263 String cdmUserName = "edit";
264 return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
265 }
266
267 public static ICdmDataSource cdm_local_palmae(){
268 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
269 String cdmServer = "127.0.0.1";
270 String cdmDB = "cdm_edit_palmae";
271 String cdmUserName = "edit";
272 return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
273 }
274
275 public static ICdmDataSource cdm_local_globis(){
276 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
277 String cdmServer = "127.0.0.1";
278 String cdmDB = "cdm_globis";
279 String cdmUserName = "edit";
280 return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
281 }
282
283 public static ICdmDataSource cdm_local_postgres_CdmTest(){
284 DatabaseTypeEnum dbType = DatabaseTypeEnum.PostgreSQL;
285 String cdmServer = "127.0.0.1";
286 String cdmDB = "CdmTest";
287 String cdmUserName = "edit";
288 return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
289 }
290
291 public static ICdmDataSource cdm_local_tdwg2010(){
292 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
293 String cdmServer = "127.0.0.1";
294 String cdmDB = "cdm_tdwg2010";
295 String cdmUserName = "edit";
296 return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
297 }
298
299
300 public static ICdmDataSource NULL(){
301 return null;
302 }
303
304
305 public static ICdmDataSource localH2(){
306 return CdmDataSource.NewH2EmbeddedInstance("cdm", "sa", "");
307 }
308
309 public static ICdmDataSource localH2(String database, String username, String filePath){
310 return CdmDataSource.NewH2EmbeddedInstance(database, "sa", "", filePath, null);
311 }
312
313 public static ICdmDataSource localH2Salvador(){
314 return CdmDataSource.NewH2EmbeddedInstance("salvador", "sa", "");
315 }
316
317 public static ICdmDataSource localH2Diptera(){
318 return CdmDataSource.NewH2EmbeddedInstance("diptera", "sa", "");
319 }
320
321
322 public static ICdmDataSource localH2Cichorieae(){
323 return CdmDataSource.NewH2EmbeddedInstance("cichorieae", "sa", "");
324 }
325
326 public static ICdmDataSource localH2Palmae(){
327 return CdmDataSource.NewH2EmbeddedInstance("palmae", "sa", "");
328 }
329
330 public static ICdmDataSource localH2EuroMed(){
331 return CdmDataSource.NewH2EmbeddedInstance("euroMed", "sa", "");
332 }
333
334 public static ICdmDataSource localH2Erms(){
335 return CdmDataSource.NewH2EmbeddedInstance("erms", "sa", "");
336 }
337
338 public static ICdmDataSource localH2_viola(){
339 return CdmDataSource.NewH2EmbeddedInstance("testViola", "sa", "");
340 }
341
342 public static ICdmDataSource localH2_LIAS(){
343 return CdmDataSource.NewH2EmbeddedInstance("testLIAS", "sa", "");
344 }
345
346 public static ICdmDataSource localH2_Erythroneura(){
347 return CdmDataSource.NewH2EmbeddedInstance("testErythroneura", "sa", "");
348 }
349
350 public static ICdmDataSource localH2_Cicad(){
351 return CdmDataSource.NewH2EmbeddedInstance("testCicad", "sa", "");
352 }
353
354 public static ICdmDataSource localH2_ValRosandraFRIDAKey(){
355 return CdmDataSource.NewH2EmbeddedInstance("testValRosandraFRIDAKey", "sa", "");
356 }
357
358 public static ICdmDataSource localH2_FreshwaterAquaticInsects(){
359 return CdmDataSource.NewH2EmbeddedInstance("testFreshwaterAquaticInsects", "sa", "");
360 }
361
362 public static ICdmDataSource cdm_portal_test_pollux(){
363 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
364 String cdmServer = "192.168.2.11";
365 String cdmDB = "cdm_portal_test";
366 String cdmUserName = "edit";
367 return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
368 }
369
370 public static ICdmDataSource cdm_algaterra_preview(){
371 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
372 String cdmServer = "160.45.63.201";
373 String cdmDB = "cdm_edit_algaterra";
374 String cdmUserName = "edit";
375 return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
376 }
377
378 public static ICdmDataSource cdm_edit_cichorieae_local_PG(){
379 DatabaseTypeEnum dbType = DatabaseTypeEnum.PostgreSQL;
380 String cdmServer = "127.0.0.1";
381 String cdmDB = "cdm_edit_cichorieae_a";
382 String cdmUserName = "edit";
383 int port = 15432;
384 return makeDestination(dbType, cdmServer, cdmDB, port, cdmUserName, null);
385 }
386
387 public static ICdmDataSource cdm_cichorieae_preview(){
388 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
389 String cdmServer = "160.45.63.201";
390 String cdmDB = "cdm_edit_cichorieae";
391 String cdmUserName = "edit";
392 return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
393 }
394
395 public static ICdmDataSource cdm_production_cichorieae(){
396 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
397 String cdmServer = "160.45.63.171";
398 // String cdmServer = "127.0.0.1";
399 String cdmDB = "cdm_production_cichorieae";
400 String cdmUserName = "edit";
401 return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
402 }
403
404 public static ICdmDataSource cdm_production_palmae(){
405 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
406 String cdmServer = "160.45.63.171";
407 String cdmDB = "cdm_production_palmae";
408 String cdmUserName = "edit";
409 return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
410 }
411
412
413 public static ICdmDataSource cdm_production_diptera(){
414 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
415 String cdmServer = "160.45.63.171";
416 String cdmDB = "cdm_production_diptera";
417 String cdmUserName = "edit";
418 return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
419 }
420
421 public static ICdmDataSource local_cdm_edit_cichorieae_a(){
422 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
423 String cdmServer = "127.0.0.1";
424 String cdmDB = "cdm_edit_cichorieae_a";
425 String cdmUserName = "edit";
426 return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
427 }
428
429 public static ICdmDataSource cdm_edit_palmae_a(){
430 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
431 String cdmServer = "192.168.2.10";
432 String cdmDB = "cdm_edit_palmae_a";
433 String cdmUserName = "edit";
434 return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
435 }
436
437 public static ICdmDataSource cdm_edit_cichorieae_preview(){
438 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
439 String cdmServer = "127.0.0.1";
440 String cdmDB = "cdm_edit_cichorieae";
441 String cdmUserName = "edit";
442 int port = 13306;
443 return makeDestination(dbType, cdmServer, cdmDB, port, cdmUserName, null);
444 }
445
446 public static ICdmDataSource cdm_edit_cichorieae_preview_direct(){
447 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
448 String cdmServer = "160.45.63.201";
449 String cdmDB = "cdm_edit_cichorieae";
450 String cdmUserName = "edit";
451 int port = 3306;
452 return makeDestination(dbType, cdmServer, cdmDB, port, cdmUserName, null);
453 }
454
455 public static ICdmDataSource cdm_edit_cichorieae_integration(){
456 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
457 String cdmServer = "127.0.0.1";
458 String cdmDB = "cdm_integration_cichorieae";
459 String cdmUserName = "edit";
460 int port = 13306;
461 return makeDestination(dbType, cdmServer, cdmDB, port, cdmUserName, null);
462 }
463
464 public static ICdmDataSource cdm_edit_palmae_preview(){
465 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
466 String cdmServer = "127.0.0.1";
467 String cdmDB = "cdm_edit_palmae";
468 String cdmUserName = "edit";
469 int port = 13306;
470 return makeDestination(dbType, cdmServer, cdmDB, port, cdmUserName, null);
471 }
472
473 public static ICdmDataSource cdm_edit_salvador(){
474 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
475 String cdmServer = "192.168.2.10";
476 String cdmDB = "cdm_edit_salvador";
477 String cdmUserName = "edit";
478 return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
479 }
480
481 public static ICdmDataSource cdm_import_salvador() {
482 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
483 String cdmServer = "192.168.2.10";
484 String cdmDB = "cdm_import_salvador";
485 String cdmUserName = "edit";
486 return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
487 }
488
489 public static ICdmDataSource cdm_salvador_production() {
490 DatabaseTypeEnum dbType = DatabaseTypeEnum.MySQL;
491 String cdmServer = "192.168.2.10";
492 String cdmDB = "salvador_cdm";
493 String cdmUserName = "salvador";
494 return makeDestination(dbType, cdmServer, cdmDB, -1, cdmUserName, null);
495 }
496
497
498 // public static ICdmDataSource LAPTOP_HP(){
499 // DatabaseTypeEnum dbType = DatabaseTypeEnum.SqlServer2005;
500 // String cdmServer = "LAPTOPHP";
501 // String cdmDB = "cdmTest";
502 // String cdmUserName = "edit";
503 // return makeDestination(cdmServer, cdmDB, -1, cdmUserName, null);
504 // }
505
506
507
508
509 /**
510 * initializes source
511 * TODO only supports MySQL and PostgreSQL
512 *
513 * @param dbType
514 * @param cdmServer
515 * @param cdmDB
516 * @param port
517 * @param cdmUserName
518 * @param pwd
519 * @return
520 */
521 public static ICdmDataSource makeDestination(DatabaseTypeEnum dbType, String cdmServer, String cdmDB, int port, String cdmUserName, String pwd ){
522 //establish connection
523 pwd = AccountStore.readOrStorePassword(cdmServer, cdmDB, cdmUserName, pwd);
524 ICdmDataSource destination;
525 if(dbType.equals(DatabaseTypeEnum.MySQL)){
526 destination = CdmDataSource.NewMySqlInstance(cdmServer, cdmDB, port, cdmUserName, pwd, null);
527 } else if(dbType.equals(DatabaseTypeEnum.PostgreSQL)){
528 destination = CdmDataSource.NewPostgreSQLInstance(cdmServer, cdmDB, port, cdmUserName, pwd, null);
529 } else {
530 //TODO others
531 throw new RuntimeException("Unsupported DatabaseType");
532 }
533 return destination;
534
535 }
536
537
538 /**
539 * Accepts a string array and tries to find a method returning an ICdmDataSource with
540 * the name of the given first string in the array
541 *
542 * @param args
543 * @return
544 */
545 public static ICdmDataSource chooseDestination(String[] args) {
546 if(args == null)
547 return null;
548
549 if(args.length != 1)
550 return null;
551
552 String possibleDestination = args[0];
553
554 Method[] methods = CdmDestinations.class.getMethods();
555
556 for (Method method : methods){
557 if(method.getName().equals(possibleDestination)){
558 try {
559 return (ICdmDataSource) method.invoke(null, null);
560 } catch (IllegalArgumentException e) {
561 // TODO Auto-generated catch block
562 e.printStackTrace();
563 } catch (IllegalAccessException e) {
564 // TODO Auto-generated catch block
565 e.printStackTrace();
566 } catch (InvocationTargetException e) {
567 // TODO Auto-generated catch block
568 e.printStackTrace();
569 }
570 }
571 }
572 return null;
573 }
574
575 }
576