2 * Copyright (C) 2008 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
.io
.jaxb
;
14 import org
.apache
.log4j
.Logger
;
16 import eu
.etaxonomy
.cdm
.database
.ICdmDataSource
;
17 import eu
.etaxonomy
.cdm
.io
.common
.ExportConfiguratorBase
;
18 import eu
.etaxonomy
.cdm
.io
.common
.IExportConfigurator
;
19 import eu
.etaxonomy
.cdm
.io
.common
.mapping
.out
.IExportTransformer
;
22 * @author a.babadshanjan
25 public class JaxbExportConfigurator
extends ExportConfiguratorBase
<URI
,JaxbExportState
> implements IExportConfigurator
<JaxbExportState
> {
26 @SuppressWarnings("unused")
27 private static final Logger logger
= Logger
.getLogger(JaxbExportConfigurator
.class);
29 private int maxRows
= 0;
30 private boolean formattedOutput
= Boolean
.TRUE
;
31 private String encoding
= "UTF-8";
33 private boolean doUsers
= true;
34 private boolean doAgentData
= true;
35 private boolean doLanguageData
= true;
36 private boolean doFeatureData
= true;
37 private boolean doDescriptions
= true;
38 private boolean doMedia
= true;
39 private boolean doOccurrence
= true;
40 // private boolean doReferences = true;
41 private boolean doReferencedEntities
= true;
42 // private boolean doRelationships = true;
43 private boolean doSynonyms
= true;
44 // private boolean doTaxonNames = true;
45 // private boolean doTaxa = true;
46 private boolean doTerms
= true;
47 private boolean doTermVocabularies
= true;
48 private boolean doHomotypicalGroups
= true;
50 private boolean doTypeDesignations
= true;
51 private boolean doClassificationData
= true;
54 private static IExportTransformer defaultTransformer
= null;
59 * @see eu.etaxonomy.cdm.io.common.IExportConfigurator#getNewState()
61 public JaxbExportState
getNewState() {
62 return new JaxbExportState(this);
65 public int getMaxRows() {
69 public void setMaxRows(int maxRows
) {
70 this.maxRows
= maxRows
;
73 public boolean isFormattedOutput() {
74 return formattedOutput
;
77 public void setFormattedOutput(boolean formattedOutput
) {
78 this.formattedOutput
= formattedOutput
;
81 public String
getEncoding() {
85 public void setEncoding(String encoding
) {
86 this.encoding
= encoding
;
89 public boolean isDoAgentData() {
93 public void setDoAgentData(boolean doAgentData
) {
94 this.doAgentData
= doAgentData
;
97 public boolean isDoLanguageData() {
98 return doLanguageData
;
102 public void setDoLanguageData(boolean doLanguageData
) {
103 this.doLanguageData
= doLanguageData
;
106 public boolean isDoFeatureData() {
107 return doFeatureData
;
110 public void setDoFeatureData(boolean doFeatureData
) {
111 this.doFeatureData
= doFeatureData
;
114 public boolean isDoClassificationData() {
115 return doClassificationData
;
117 public void setDoClassificationData(boolean doClassificationData
) {
118 this.doClassificationData
= doClassificationData
;
120 public boolean isDoDescriptions() {
121 return doDescriptions
;
124 public void setDoDescriptions(boolean doDescriptions
) {
125 this.doDescriptions
= doDescriptions
;
128 public boolean isDoMedia() {
132 public void setDoMedia(boolean doMedia
) {
133 this.doMedia
= doMedia
;
136 public boolean isDoReferencedEntities() {
137 return doReferencedEntities
;
140 public void setDoReferencedEntities(boolean doReferencedEntities
) {
141 this.doReferencedEntities
= doReferencedEntities
;
145 public boolean isDoSynonyms() {
148 public boolean isDoUsers() {
152 public void setDoSynonyms(boolean doSynonyms
) {
153 this.doSynonyms
= doSynonyms
;
157 public boolean isDoTerms() {
161 public void setDoTerms(boolean doTerms
) {
162 this.doTerms
= doTerms
;
165 public boolean isDoTermVocabularies() {
166 return doTermVocabularies
;
169 public void setDoTermVocabularies(boolean doTermVocabularies
) {
170 this.doTermVocabularies
= doTermVocabularies
;
173 public boolean isDoHomotypicalGroups() {
174 return doHomotypicalGroups
;
177 public void setDoHomotypicalGroups(boolean doHomotypicalGroups
) {
178 this.doHomotypicalGroups
= doHomotypicalGroups
;
182 // @SuppressWarnings("unchecked")
183 protected void makeIoClassList() {
184 ioClassList
= new Class
[] {
190 public static JaxbExportConfigurator
NewInstance(ICdmDataSource source
, URI uri
) {
191 return new JaxbExportConfigurator(source
, uri
);
199 private JaxbExportConfigurator(ICdmDataSource source
, URI uri
) {
200 super(defaultTransformer
);
207 * @see eu.etaxonomy.cdm.io.common.ImportConfiguratorBase#getSource()
209 public URI
getDestination() {
210 return super.getDestination();
217 public void setDestination(URI uri
) {
218 super.setDestination(uri
);
223 * @see eu.etaxonomy.cdm.io.common.IExportConfigurator#getDestinationNameString()
225 public String
getDestinationNameString() {
226 if (this.getDestination() == null) {
229 return this.getDestination().toString();
233 public boolean isDoTypeDesignations() {
234 return doTypeDesignations
;
237 public void setDoTypeDesignations(boolean doTypeDesignations
) {
238 this.doTypeDesignations
= doTypeDesignations
;
241 public boolean isDoOccurrence() {
244 public void setDoOccurrence(boolean doOccurrence
) {
245 this.doOccurrence
= doOccurrence
;
248 private boolean doAuthors
= true;
250 private DO_REFERENCES doReferences
= DO_REFERENCES
.ALL
;
252 private boolean doTaxonNames
= true;
254 private boolean doTaxa
= true;
256 public boolean isDoAuthors() {
259 public void setDoAuthors(boolean doAuthors
) {
260 this.doAuthors
= doAuthors
;
263 public DO_REFERENCES
getDoReferences() {
266 public void setDoReferences(DO_REFERENCES doReferences
) {
267 this.doReferences
= doReferences
;
270 public boolean isDoTaxonNames() {
273 public void setDoTaxonNames(boolean doTaxonNames
) {
274 this.doTaxonNames
= doTaxonNames
;
277 public boolean isDoTaxa() {
280 public void setDoTaxa(boolean doTaxa
) {
281 this.doTaxa
= doTaxa
;