merge trunk to cdm-3.3 branch
[cdmlib.git] / cdmlib-io / src / main / java / eu / etaxonomy / cdm / io / excel / stream / ExcelStreamImportConfigurator.java
1 package eu.etaxonomy.cdm.io.excel.stream;
2
3 import java.net.URI;
4
5 import org.apache.log4j.Logger;
6
7 import eu.etaxonomy.cdm.database.DbSchemaValidation;
8 import eu.etaxonomy.cdm.database.ICdmDataSource;
9 import eu.etaxonomy.cdm.io.common.IImportConfigurator;
10 import eu.etaxonomy.cdm.io.common.mapping.IInputTransformer;
11 import eu.etaxonomy.cdm.io.dwca.in.DwcaDataImportConfiguratorBase;
12 import eu.etaxonomy.cdm.model.name.NomenclaturalCode;
13 /**
14 *
15 * @author a.oppermann
16 * @date 08.05.2013
17 *
18 */
19 public class ExcelStreamImportConfigurator extends DwcaDataImportConfiguratorBase<ExcelStreamImportState> implements IImportConfigurator {
20 @SuppressWarnings("unused")
21 private static final Logger logger = Logger.getLogger(ExcelStreamImportConfigurator.class);
22
23 private static final String DEFAULT_REF_TITLE = "Excel Stream Import";
24
25
26 private static IInputTransformer defaultTransformer = null;
27
28
29 /**
30 * Factory method.
31 * @param uri
32 * @param destination
33 * @return
34 */
35 public static ExcelStreamImportConfigurator NewInstance(URI uri, ICdmDataSource destination, NomenclaturalCode nomenclaturalCode, DbSchemaValidation dbSchemaValidation){
36 return new ExcelStreamImportConfigurator(uri, destination, nomenclaturalCode, dbSchemaValidation);
37 }
38
39 // /**
40 // * @param transformer
41 // */
42 // public ExcelStreamImportConfigurator(IInputTransformer transformer) {
43 // super(transformer);
44 // }
45
46 /**
47 * Constructor.
48 * @param uri
49 * @param destination
50 */
51 private ExcelStreamImportConfigurator(URI uri, ICdmDataSource destination, NomenclaturalCode nomenclaturalCode, DbSchemaValidation dbSchemaValidation) {
52 super(uri, destination, defaultTransformer);
53 setDbSchemaValidation(dbSchemaValidation);
54 setNomenclaturalCode(nomenclaturalCode);
55 }
56
57 /* (non-Javadoc)
58 * @see eu.etaxonomy.cdm.io.common.IImportConfigurator#getNewState()
59 */
60 @Override
61 public ExcelStreamImportState getNewState() {
62 return new ExcelStreamImportState(this);
63 }
64
65 /* (non-Javadoc)
66 * @see eu.etaxonomy.cdm.io.common.ImportConfiguratorBase#makeIoClassList()
67 */
68 @SuppressWarnings("unchecked")
69 @Override
70 protected void makeIoClassList() {
71 ioClassList = new Class[]{
72 ExcelStreamImport.class
73 };
74 }
75
76
77 /* (non-Javadoc)
78 * @see eu.etaxonomy.cdm.io.dwca.in.StreamImportConfiguratorBase#getDefaultSourceReferenceTitle()
79 */
80 @Override
81 protected String getDefaultSourceReferenceTitle() {
82 return DEFAULT_REF_TITLE;
83 }
84
85 }