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
.logging
.log4j
.LogManager
;
12 import org
.apache
.logging
.log4j
.Logger
;
14 import eu
.etaxonomy
.cdm
.database
.ICdmDataSource
;
15 import eu
.etaxonomy
.cdm
.io
.common
.ImportConfiguratorBase
;
16 import eu
.etaxonomy
.cdm
.io
.common
.Source
;
17 import eu
.etaxonomy
.cdm
.io
.common
.mapping
.IInputTransformer
;
18 import eu
.etaxonomy
.cdm
.io
.pesi
.out
.PesiTransformer
;
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
27 public class FaunaEuropaeaImportConfigurator
28 extends ImportConfiguratorBase
<FaunaEuropaeaImportState
, Source
>{
30 private static final long serialVersionUID
= 3218446329444903409L;
31 private static Logger logger
= LogManager
.getLogger();
33 private static IInputTransformer defaultTransformer
= null;
35 private boolean doBasionyms
= true;
36 private boolean doTaxonomicallyIncluded
= true;
37 private boolean doMisappliedNames
= true;
38 private boolean doHeterotypicSynonyms
= true;
39 private boolean doHeterotypicSynonymsForBasionyms
;
40 private boolean doOccurrence
= true;
41 private boolean doVernacularNames
= true;
42 private boolean doAssociatedSpecialists
= true;
43 private boolean doInferredSynonyms
= true;
45 public boolean isDoVernacularNames() {
46 return doVernacularNames
;
49 public void setDoVernacularNames(boolean doVernacularNames
) {
50 this.doVernacularNames
= doVernacularNames
;
53 public boolean isDoTypes() {
57 /* Max number of taxa to be saved with one service call */
58 private int limitSave
= 5000;
59 private Reference auctReference
;
62 @SuppressWarnings("unchecked")
63 protected void makeIoClassList() {
64 ioClassList
= new Class
[] {
65 FaunaEuropaeaAuthorImport
.class,
66 FaunaEuropaeaUsersImport
.class,
67 FaunaEuropaeaTaxonNameImport
.class,
68 FaunaEuropaeaRelTaxonIncludeImport
.class,
69 FaunaEuropaeaDistributionImport
.class,
70 FaunaEuropaeaHeterotypicSynonymImport
.class,
71 FaunaEuropaeaRefImport
.class,
72 FaunaEuropaeaAdditionalTaxonDataImport
.class,
73 FaunaEuropaeaVernacularNamesImport
.class
77 public static FaunaEuropaeaImportConfigurator
NewInstance(Source source
, ICdmDataSource destination
){
78 return new FaunaEuropaeaImportConfigurator(source
, destination
);
81 private FaunaEuropaeaImportConfigurator(Source source
, ICdmDataSource destination
) {
82 super(defaultTransformer
);
84 setDestination(destination
);
85 setNomenclaturalCode(NomenclaturalCode
.ICZN
);
88 // public static FaunaEuropaeaImportConfigurator NewInstance(ICdmDataSource source, ICdmDataSource destination){
89 // return new FaunaEuropaeaImportConfigurator(source, destination);
92 // private FaunaEuropaeaImportConfigurator(ICdmDataSource source, ICdmDataSource destination) {
93 // super(defaultTransformer);
95 // setDestination(destination);
96 // setNomenclaturalCode(NomenclaturalCode.ICBN);
101 public Reference
getSourceReference() {
103 if (this.sourceReference
== null){
104 logger
.warn("getSource Reference not yet fully implemented");
106 sourceReference
= ReferenceFactory
.newDatabase();
108 sourceReference
.setTitleCache("Fauna Europaea database", true);
109 if (this.getSourceRefUuid() != null){
110 sourceReference
.setUuid(this.getSourceRefUuid());
113 return sourceReference
;
116 public Reference
getAuctReference() {
118 if (auctReference
== null){
119 auctReference
= ReferenceFactory
.newPersonalCommunication();
121 auctReference
.setTitleCache("auct.", true);
122 auctReference
.setUuid(PesiTransformer
.uuidSourceRefAuct
);
124 return auctReference
;
128 public String
getSourceNameString() {
129 if (this.getSource() == null) {
132 return this.getSource().toString();
136 @SuppressWarnings("unchecked")
138 public FaunaEuropaeaImportState
getNewState() {
139 return new FaunaEuropaeaImportState(this);
142 public boolean isDoBasionyms() {
145 public void setDoBasionyms(boolean doBasionyms
) {
146 this.doBasionyms
= doBasionyms
;
149 public boolean isDoTaxonomicallyIncluded() {
150 return doTaxonomicallyIncluded
;
152 public void setDoTaxonomicallyIncluded(boolean doTaxonomicallyIncluded
) {
153 this.doTaxonomicallyIncluded
= doTaxonomicallyIncluded
;
156 public boolean isDoMisappliedNames() {
157 return doMisappliedNames
;
159 public void setDoMisappliedNames(boolean doMisappliedNames
) {
160 this.doMisappliedNames
= doMisappliedNames
;
163 public boolean isDoHeterotypicSynonyms() {
164 return doHeterotypicSynonyms
;
166 public void setDoHeterotypicSynonyms(boolean doHeterotypicSynonyms
) {
167 this.doHeterotypicSynonyms
= doHeterotypicSynonyms
;
170 public void setAuctReference(Reference auctReference
) {
171 this.auctReference
= auctReference
;
174 public int getLimitSave() {
177 public void setLimitSave(int limitSave
) {
178 this.limitSave
= limitSave
;
181 public void setDoHeterotypicSynonymsForBasionyms(
182 boolean doHeterotypicSynonymsForBasionyms
) {
183 this.doHeterotypicSynonymsForBasionyms
= doHeterotypicSynonymsForBasionyms
;
185 public boolean isDoHeterotypicSynonymsForBasionyms() {
186 return doHeterotypicSynonymsForBasionyms
;
189 public boolean isDoOccurrence() {
192 public void setDoOccurrence(boolean doOccurrence
) {
193 this.doOccurrence
= doOccurrence
;
197 private boolean doAuthors
= true;
199 private DO_REFERENCES doReferences
= DO_REFERENCES
.ALL
;
201 private final boolean doTypes
= true;
204 private boolean doTaxa
= true;
205 private boolean doRelTaxa
= true;
207 public boolean isDoAuthors() {
210 public void setDoAuthors(boolean doAuthors
) {
211 this.doAuthors
= doAuthors
;
214 public DO_REFERENCES
getDoReferences() {
217 public void setDoReferences(DO_REFERENCES doReferences
) {
218 this.doReferences
= doReferences
;
221 public boolean isDoTaxa() {
224 public void setDoTaxa(boolean doTaxa
) {
225 this.doTaxa
= doTaxa
;
228 public boolean isDoRelTaxa() {
231 public void setDoRelTaxa(boolean doRelTaxa
) {
232 this.doRelTaxa
= doRelTaxa
;
235 public boolean isDoAssociatedSpecialists() {
237 return this.doAssociatedSpecialists
;
240 public void setDoAssociatedSpecialists(boolean doAssociatedSpecialists
){
241 this.doAssociatedSpecialists
= doAssociatedSpecialists
;
244 public boolean isDoInferredSynonyms() {
245 return doInferredSynonyms
;
247 public void setDoInferredSynonyms(boolean doInferredSynonyms
){
248 this.doInferredSynonyms
= doInferredSynonyms
;