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
;
12 import org
.apache
.log4j
.Logger
;
14 import eu
.etaxonomy
.cdm
.database
.DbSchemaValidation
;
15 import eu
.etaxonomy
.cdm
.database
.ICdmDataSource
;
16 import eu
.etaxonomy
.cdm
.io
.common
.IImportConfigurator
;
17 import eu
.etaxonomy
.cdm
.io
.common
.ImportConfiguratorBase
;
18 import eu
.etaxonomy
.cdm
.io
.common
.IImportConfigurator
.DO_REFERENCES
;
19 import eu
.etaxonomy
.cdm
.model
.reference
.IDatabase
;
20 import eu
.etaxonomy
.cdm
.model
.reference
.ReferenceBase
;
21 import eu
.etaxonomy
.cdm
.model
.reference
.ReferenceFactory
;
24 * @author a.babadshanjan
27 public class JaxbImportConfigurator
extends ImportConfiguratorBase
implements IImportConfigurator
{
29 private static final Logger logger
= Logger
.getLogger(JaxbImportConfigurator
.class);
31 private int maxRows
= 0;
34 private boolean doUsers
= true;
35 private boolean doAgentData
= true;
36 private boolean doLanguageData
= true;
37 private boolean doFeatureData
= true;
38 private boolean doDescriptions
= true;
39 private boolean doMedia
= true;
40 // private boolean doOccurrences = true;
41 // private boolean doReferences = true;
42 private boolean doReferencedEntities
= true;
43 // private boolean doRelationships = true;
44 private boolean doSynonyms
= true;
45 // private boolean doTaxonNames = true;
46 // private boolean doTaxa = true;
47 private boolean doTerms
= true;
48 private boolean doTermVocabularies
= true;
49 private boolean doHomotypicalGroups
= true;
51 private boolean doTypeDesignations
= true;
52 private boolean doTaxonomicTreeData
= true;
59 * @see eu.etaxonomy.cdm.io.common.IImportConfigurator#getNewState()
61 public JaxbImportState
getNewState() {
62 return new JaxbImportState(this);
65 public int getMaxRows() {
69 public void setMaxRows(int maxRows
) {
70 this.maxRows
= maxRows
;
75 public boolean isDoAgentData() {
79 public void setDoAgentData(boolean doAgentData
) {
80 this.doAgentData
= doAgentData
;
83 public boolean isDoLanguageData() {
84 return doLanguageData
;
87 public void setDoLanguageData(boolean doLanguageData
) {
88 this.doLanguageData
= doLanguageData
;
91 public boolean isDoFeatureData() {
95 public void setDoFeatureData(boolean doFeatureData
) {
96 this.doFeatureData
= doFeatureData
;
99 public boolean isDoDescriptions() {
100 return doDescriptions
;
103 public void setDoDescriptions(boolean doDescriptions
) {
104 this.doDescriptions
= doDescriptions
;
107 public boolean isDoMedia() {
111 public void setDoMedia(boolean doMedia
) {
112 this.doMedia
= doMedia
;
116 public boolean isDoReferencedEntities() {
117 return doReferencedEntities
;
120 public void setDoReferencedEntities(boolean doReferencedEntities
) {
121 this.doReferencedEntities
= doReferencedEntities
;
125 public boolean isDoSynonyms() {
129 public void setDoSynonyms(boolean doSynonyms
) {
130 this.doSynonyms
= doSynonyms
;
134 public boolean isDoTerms() {
138 public void setDoTerms(boolean doTerms
) {
139 this.doTerms
= doTerms
;
142 public boolean isDoTermVocabularies() {
143 return doTermVocabularies
;
146 public void setDoTermVocabularies(boolean doTermVocabularies
) {
147 this.doTermVocabularies
= doTermVocabularies
;
150 public boolean isDoHomotypicalGroups() {
151 return doHomotypicalGroups
;
154 public void setDoHomotypicalGroups(boolean doHomotypicalGroups
) {
155 this.doHomotypicalGroups
= doHomotypicalGroups
;
158 // @SuppressWarnings("unchecked")
159 protected void makeIoClassList() {
160 ioClassList
= new Class
[] {
165 public static JaxbImportConfigurator
NewInstance(String url
,
166 ICdmDataSource destination
){
167 return new JaxbImportConfigurator(url
, destination
);
175 private JaxbImportConfigurator(String url
, ICdmDataSource destination
) {
178 setDestination(destination
);
179 setDbSchemaValidation(DbSchemaValidation
.CREATE
);
184 * @see eu.etaxonomy.cdm.io.common.ImportConfiguratorBase#getSource()
186 public Object
getSource() {
187 // public String getSource() {
188 return (String
)super.getSource();
195 public void setSource(String fileName
) {
196 super.setSource(fileName
);
201 * @see eu.etaxonomy.cdm.io.common.ImportConfiguratorBase#getSourceReference()
204 public ReferenceBase
getSourceReference() {
206 if (this.sourceReference
== null){
207 ReferenceFactory refFactory
= ReferenceFactory
.newInstance();
208 logger
.warn("getSource Reference not yet fully implemented");
209 sourceReference
= refFactory
.newDatabase();
210 sourceReference
.setTitleCache("Jaxb import");
212 return sourceReference
;
217 * @see eu.etaxonomy.cdm.io.common.IImportConfigurator#getSourceNameString()
219 public String
getSourceNameString() {
220 if (this.getSource() == null){
223 return (String
)this.getSource();
227 public boolean isDoTypeDesignations() {
228 return doTypeDesignations
;
231 public void setDoTypeDesignations(boolean doTypeDesignations
) {
232 this.doTypeDesignations
= doTypeDesignations
;
235 public boolean isDoTaxonomicTreeData() {
236 return this.doTaxonomicTreeData
;