2 * Copyright (C) 2007 EDIT
3 * European Distributed Institute of Taxonomy
4 * http://www.e-taxonomy.eu
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.
10 package eu
.etaxonomy
.cdm
.app
.dwca
;
12 import java
.util
.Arrays
;
13 import java
.util
.HashSet
;
14 import java
.util
.List
;
16 import java
.util
.UUID
;
18 import org
.apache
.log4j
.Logger
;
20 import eu
.etaxonomy
.cdm
.app
.common
.CdmDestinations
;
21 import eu
.etaxonomy
.cdm
.database
.ICdmDataSource
;
22 import eu
.etaxonomy
.cdm
.io
.common
.CdmDefaultExport
;
23 import eu
.etaxonomy
.cdm
.io
.common
.IExportConfigurator
.CHECK
;
24 import eu
.etaxonomy
.cdm
.io
.dwca
.out
.DwcaTaxExportConfigurator
;
32 public class DwcaExportActivator
{
33 @SuppressWarnings("unused")
34 private static final Logger logger
= Logger
.getLogger(DwcaExportActivator
.class);
36 //database validation status (create, update, validate ...)
37 private static final String fileDestination
= "C:\\tmp\\dwcaTmp";
38 // private static final ICdmDataSource cdmSource = CdmDestinations.cdm_test_local_mysql();
39 private static final ICdmDataSource cdmSource
= CdmDestinations
.cdm_production_cichorieae();
42 private static final CHECK check
= CHECK
.EXPORT_WITHOUT_CHECK
;
44 private static List
<UUID
> featureExclusions
= Arrays
.asList(new UUID
[]{
45 UUID
.fromString("5deff505-1a32-4817-9a74-50e6936fd630"), //occurrences
46 UUID
.fromString("8075074c-ace8-496b-ac82-47c14553f7fd"), //Editor_Parenthesis
47 UUID
.fromString("c0cc5ebe-1f0c-4c31-af53-d486858ea415") //Image Sources
51 // ****************** ALL *****************************************
52 // private boolean doTaxa = false;
53 // private boolean doResourceRelation = true;
54 // private boolean doTypesAndSpecimen = true;
55 // private boolean doVernacularNames = true;
56 // private boolean doReferences = true;
57 // private boolean doDescription = true;
58 // private boolean doDistributions = true;
59 // private boolean doImages = true;
62 // ************************ NONE **************************************** //
63 private boolean doTaxa
= false;
64 private boolean doResourceRelation
= false;
65 private boolean doTypesAndSpecimen
= false;
66 private boolean doVernacularNames
= false;
67 private boolean doReferences
= false;
68 private boolean doDescription
= true;
69 private boolean doDistributions
= false;
70 private boolean doImages
= false;
73 public boolean doExport(ICdmDataSource source
){
74 System
.out
.println("Start export to DWC-A ("+ fileDestination
+ ") ...");
76 // CdmUpdater su = CdmUpdater.NewInstance();
77 // IProgressMonitor monitor = DefaultProgressMonitor.NewInstance();
80 // su.updateToCurrentVersion(source, monitor);
81 // } catch (Exception e) {
82 // e.printStackTrace();
88 //make file destination
89 String destination
= fileDestination
;
91 DwcaTaxExportConfigurator config
= DwcaTaxExportConfigurator
.NewInstance(source
, destination
);
93 config
.setDoTaxa(doTaxa
);
94 config
.setDoResourceRelation(doResourceRelation
);
95 config
.setDoTypesAndSpecimen(doTypesAndSpecimen
);
96 config
.setDoVernacularNames(doVernacularNames
);
97 config
.setDoReferences(doReferences
);
98 config
.setDoDescription(doDescription
);
99 config
.setDoDistributions(doDistributions
);
100 config
.setDoImages(doImages
);
101 config
.setCheck(check
);
103 config
.setFeatureExclusions(featureExclusions
);
105 CdmDefaultExport
<DwcaTaxExportConfigurator
> bmExport
= new CdmDefaultExport
<DwcaTaxExportConfigurator
>();
106 boolean result
= bmExport
.invoke(config
);
108 System
.out
.println("End export to DWC-A ("+ fileDestination
+ ")..." + (result?
"(successful)":"(with errors)"));
116 public static void main(String
[] args
) {
117 DwcaExportActivator ex
= new DwcaExportActivator();
118 ICdmDataSource source
= CdmDestinations
.chooseDestination(args
) != null ? CdmDestinations
.chooseDestination(args
) : cdmSource
;