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.
9 package eu
.etaxonomy
.cdm
.io
.pesi
.faunaEuropaea
;
11 import org
.apache
.log4j
.Logger
;
13 import eu
.etaxonomy
.cdm
.database
.ICdmDataSource
;
14 import eu
.etaxonomy
.cdm
.io
.common
.IImportConfigurator
;
15 import eu
.etaxonomy
.cdm
.io
.common
.ImportConfiguratorBase
;
16 import eu
.etaxonomy
.cdm
.io
.common
.Source
;
17 import eu
.etaxonomy
.cdm
.io
.common
.IImportConfigurator
.DO_REFERENCES
;
18 import eu
.etaxonomy
.cdm
.io
.common
.mapping
.IInputTransformer
;
19 import eu
.etaxonomy
.cdm
.model
.name
.NomenclaturalCode
;
20 import eu
.etaxonomy
.cdm
.model
.reference
.Reference
;
21 import eu
.etaxonomy
.cdm
.model
.reference
.ReferenceFactory
;
24 * @author a.babadshanjan
28 public class FaunaEuropaeaImportConfigurator
extends ImportConfiguratorBase
<FaunaEuropaeaImportState
, Source
> implements IImportConfigurator
{
29 private static final Logger logger
= Logger
.getLogger(FaunaEuropaeaImportConfigurator
.class);
32 private static IInputTransformer defaultTransformer
= null;
34 private boolean doBasionyms
= true;
35 private boolean doTaxonomicallyIncluded
= true;
36 private boolean doMisappliedNames
= true;
37 private boolean doHeterotypicSynonyms
= true;
38 private boolean doHeterotypicSynonymsForBasionyms
;
39 private boolean doOccurrence
= true;
41 /* Max number of taxa to be saved with one service call */
42 private int limitSave
= 5000;
43 private Reference
<?
> auctReference
;
45 @SuppressWarnings("unchecked")
46 protected void makeIoClassList() {
47 ioClassList
= new Class
[] {
48 FaunaEuropaeaAuthorImport
.class,
49 FaunaEuropaeaTaxonNameImport
.class,
50 FaunaEuropaeaRelTaxonIncludeImport
.class,
51 FaunaEuropaeaRefImport
.class,
52 FaunaEuropaeaUsersImport
.class,
53 FaunaEuropaeaDistributionImport
.class,
54 FaunaEuropaeaHeterotypicSynonymImport
.class,
55 FaunaEuropaeaAdditionalTaxonDataImport
.class,
59 public static FaunaEuropaeaImportConfigurator
NewInstance(Source source
, ICdmDataSource destination
){
60 return new FaunaEuropaeaImportConfigurator(source
, destination
);
63 private FaunaEuropaeaImportConfigurator(Source source
, ICdmDataSource destination
) {
64 super(defaultTransformer
);
66 setDestination(destination
);
67 setNomenclaturalCode(NomenclaturalCode
.ICBN
);
70 // public static FaunaEuropaeaImportConfigurator NewInstance(ICdmDataSource source, ICdmDataSource destination){
71 // return new FaunaEuropaeaImportConfigurator(source, destination);
74 // private FaunaEuropaeaImportConfigurator(ICdmDataSource source, ICdmDataSource destination) {
75 // super(defaultTransformer);
77 // setDestination(destination);
78 // setNomenclaturalCode(NomenclaturalCode.ICBN);
83 * @see eu.etaxonomy.cdm.io.common.ImportConfiguratorBase#getSourceReference()
86 public Reference
<?
> getSourceReference() {
88 if (this.sourceReference
== null){
89 logger
.warn("getSource Reference not yet fully implemented");
90 sourceReference
= ReferenceFactory
.newDatabase();
92 sourceReference
.setTitleCache("Fauna Europaea database", true);
94 return sourceReference
;
99 * @see eu.etaxonomy.cdm.io.common.ImportConfiguratorBase#getSourceReference()
101 public Reference
<?
> getAuctReference() {
103 if (auctReference
== null){
104 auctReference
= ReferenceFactory
.newPersonalCommunication();
106 auctReference
.setTitleCache("auct.", true);
108 return auctReference
;
112 * @see eu.etaxonomy.cdm.io.common.IImportConfigurator#getSourceNameString()
114 public String
getSourceNameString() {
115 if (this.getSource() == null) {
118 return this.getSource().toString();
123 * @see eu.etaxonomy.cdm.io.common.IImportConfigurator#getNewState()
125 public FaunaEuropaeaImportState
getNewState() {
126 return new FaunaEuropaeaImportState(this);
130 * @return the doBasionyms
132 public boolean isDoBasionyms() {
137 * @param doBasionyms the doBasionyms to set
139 public void setDoBasionyms(boolean doBasionyms
) {
140 this.doBasionyms
= doBasionyms
;
144 * @return the doTaxonomicallyIncluded
146 public boolean isDoTaxonomicallyIncluded() {
147 return doTaxonomicallyIncluded
;
151 * @param doTaxonomicallyIncluded the doTaxonomicallyIncluded to set
153 public void setDoTaxonomicallyIncluded(boolean doTaxonomicallyIncluded
) {
154 this.doTaxonomicallyIncluded
= doTaxonomicallyIncluded
;
158 * @return the doMisappliedNames
160 public boolean isDoMisappliedNames() {
161 return doMisappliedNames
;
165 * @param doMisappliedNames the doMisappliedNames to set
167 public void setDoMisappliedNames(boolean doMisappliedNames
) {
168 this.doMisappliedNames
= doMisappliedNames
;
172 * @return the doHeterotypicSynonyms
174 public boolean isDoHeterotypicSynonyms() {
175 return doHeterotypicSynonyms
;
179 * @param doHeterotypicSynonyms the doHeterotypicSynonyms to set
181 public void setDoHeterotypicSynonyms(boolean doHeterotypicSynonyms
) {
182 this.doHeterotypicSynonyms
= doHeterotypicSynonyms
;
186 * @param auctReference the auctReference to set
188 public void setAuctReference(Reference
<?
> auctReference
) {
189 this.auctReference
= auctReference
;
193 * @return the limitSave
195 public int getLimitSave() {
200 * @param limitSave the limitSave to set
202 public void setLimitSave(int limitSave
) {
203 this.limitSave
= limitSave
;
207 * @param doHeterotypicSynonymsForBasionyms the doHeterotypicSynonymsForBasionyms to set
209 public void setDoHeterotypicSynonymsForBasionyms(
210 boolean doHeterotypicSynonymsForBasionyms
) {
211 this.doHeterotypicSynonymsForBasionyms
= doHeterotypicSynonymsForBasionyms
;
215 * @return the doHeterotypicSynonymsForBasionyms
217 public boolean isDoHeterotypicSynonymsForBasionyms() {
218 return doHeterotypicSynonymsForBasionyms
;
223 * @see eu.etaxonomy.cdm.io.tcsrdf.IImportConfigurator#isDoOccurrence()
225 public boolean isDoOccurrence() {
229 * @see eu.etaxonomy.cdm.io.tcsrdf.IImportConfigurator#setDoOccurrence(boolean)
231 public void setDoOccurrence(boolean doOccurrence
) {
232 this.doOccurrence
= doOccurrence
;
236 private boolean doAuthors
= true;
238 private DO_REFERENCES doReferences
= DO_REFERENCES
.ALL
;
240 private boolean doTypes
= true;
243 private boolean doTaxa
= true;
244 private boolean doRelTaxa
= true;
246 public boolean isDoAuthors() {
249 public void setDoAuthors(boolean doAuthors
) {
250 this.doAuthors
= doAuthors
;
253 public DO_REFERENCES
getDoReferences() {
256 public void setDoReferences(DO_REFERENCES doReferences
) {
257 this.doReferences
= doReferences
;
260 // public boolean isDoTypes() {
263 // public void setDoTypes(boolean doTypes) {
264 // this.doTypes = doTypes;
267 public boolean isDoTaxa() {
270 public void setDoTaxa(boolean doTaxa
) {
271 this.doTaxa
= doTaxa
;
274 public boolean isDoRelTaxa() {
277 public void setDoRelTaxa(boolean doRelTaxa
) {
278 this.doRelTaxa
= doRelTaxa
;