Fauna Europaea Import
[cdmlib.git] / cdmlib-io / src / main / java / eu / etaxonomy / cdm / io / faunaEuropaea / FaunaEuropaeaImportConfigurator.java
1 /**
2 * Copyright (C) 2008 EDIT
3 * European Distributed Institute of Taxonomy
4 * http://www.e-taxonomy.eu
5 *
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.
8 */
9 package eu.etaxonomy.cdm.io.faunaEuropaea;
10
11 import org.apache.log4j.Logger;
12 import eu.etaxonomy.cdm.database.ICdmDataSource;
13 import eu.etaxonomy.cdm.io.berlinModel.in.BerlinModelImportConfigurator;
14 import eu.etaxonomy.cdm.io.common.IImportConfigurator;
15 import eu.etaxonomy.cdm.io.common.ImportConfiguratorBase;
16 import eu.etaxonomy.cdm.io.common.ImportStateBase;
17 import eu.etaxonomy.cdm.io.common.Source;
18 import eu.etaxonomy.cdm.model.name.NomenclaturalCode;
19 import eu.etaxonomy.cdm.model.reference.Database;
20 import eu.etaxonomy.cdm.model.reference.ReferenceBase;
21
22 /**
23 * @author a.babadshanjan
24 * @created 08.05.2009
25 * @version 1.0
26 */
27 public class FaunaEuropaeaImportConfigurator extends ImportConfiguratorBase<FaunaEuropaeaImportState> implements IImportConfigurator {
28
29 private static final Logger logger = Logger.getLogger(FaunaEuropaeaImportConfigurator.class);
30
31 protected ReferenceBase auctReference;
32
33 @SuppressWarnings("unchecked")
34 protected void makeIoClassList() {
35 ioClassList = new Class[] {
36 // FaunaEuropaeaAuthorImport.class,
37 FaunaEuropaeaTaxonImport.class
38 // FaunaEuropaeaRefImport.class
39 // FaunaEuropaeaDistributionImport.class
40 };
41 };
42
43 public static FaunaEuropaeaImportConfigurator NewInstance(Source source, ICdmDataSource destination){
44 return new FaunaEuropaeaImportConfigurator(source, destination);
45 }
46
47 private FaunaEuropaeaImportConfigurator(Source source, ICdmDataSource destination) {
48 setSource(source);
49 setDestination(destination);
50 setNomenclaturalCode(NomenclaturalCode.ICBN);
51 }
52
53 /* (non-Javadoc)
54 * @see eu.etaxonomy.cdm.io.common.ImportConfiguratorBase#getSource()
55 */
56 public Source getSource() {
57 return (Source)super.getSource();
58 }
59
60 /**
61 * @param dbSource
62 */
63 public void setSource(Source dbSource) {
64 super.setSource(dbSource);
65 }
66
67
68 /* (non-Javadoc)
69 * @see eu.etaxonomy.cdm.io.common.ImportConfiguratorBase#getSourceReference()
70 */
71 @Override
72 public ReferenceBase getSourceReference() {
73 //TODO
74 if (this.sourceReference == null){
75 logger.warn("getSource Reference not yet fully implemented");
76 sourceReference = Database.NewInstance();
77 sourceReference.setTitleCache("Fauna Europaea database");
78 }
79 return sourceReference;
80 }
81
82
83 /* (non-Javadoc)
84 * @see eu.etaxonomy.cdm.io.common.ImportConfiguratorBase#getSourceReference()
85 */
86 public ReferenceBase getAuctReference() {
87 //TODO
88 if (auctReference == null){
89 auctReference = Database.NewInstance();
90 sourceReference.setTitleCache("auct.");
91 }
92 return auctReference;
93 }
94
95 /* (non-Javadoc)
96 * @see eu.etaxonomy.cdm.io.common.IImportConfigurator#getSourceNameString()
97 */
98 public String getSourceNameString() {
99 if (this.getSource() == null) {
100 return null;
101 }else{
102 return this.getSource().toString();
103 }
104 }
105
106 /* (non-Javadoc)
107 * @see eu.etaxonomy.cdm.io.common.IImportConfigurator#getNewState()
108 */
109 public FaunaEuropaeaImportState getNewState() {
110 return new FaunaEuropaeaImportState(this);
111 }
112
113
114
115 }