Project

General

Profile

Download (2.85 KB) Statistics
| Branch: | Tag: | Revision:
1
package eu.etaxonomy.cdm.io.excel.stream;
2

    
3
import java.io.InputStream;
4
import java.net.URI;
5

    
6
import org.apache.log4j.Logger;
7

    
8
import eu.etaxonomy.cdm.database.DbSchemaValidation;
9
import eu.etaxonomy.cdm.database.ICdmDataSource;
10
import eu.etaxonomy.cdm.io.common.IImportConfigurator;
11
import eu.etaxonomy.cdm.io.common.mapping.IInputTransformer;
12
import eu.etaxonomy.cdm.io.dwca.in.DwcaDataImportConfiguratorBase;
13
import eu.etaxonomy.cdm.model.name.NomenclaturalCode;
14
/**
15
 *
16
 * @author a.oppermann
17
 * @date 08.05.2013
18
 *
19
 */
20
public class ExcelStreamImportConfigurator extends DwcaDataImportConfiguratorBase<ExcelStreamImportState> implements IImportConfigurator {
21
	@SuppressWarnings("unused")
22
	private static final Logger logger = Logger.getLogger(ExcelStreamImportConfigurator.class);
23

    
24
	private static final String DEFAULT_REF_TITLE = "Excel Stream Import";
25

    
26

    
27
	private static IInputTransformer defaultTransformer = null;
28

    
29
	private InputStream stream = null;
30

    
31

    
32
	/**
33
	 * Factory method.
34
	 * @param uri
35
	 * @param destination
36
	 * @return
37
	 */
38
	public static ExcelStreamImportConfigurator NewInstance(URI uri, ICdmDataSource destination, NomenclaturalCode nomenclaturalCode, DbSchemaValidation dbSchemaValidation){
39
		return new ExcelStreamImportConfigurator(uri, destination, nomenclaturalCode, dbSchemaValidation);
40
	}
41

    
42
//	/**
43
//	 * @param transformer
44
//	 */
45
//	public ExcelStreamImportConfigurator(IInputTransformer transformer) {
46
//		super(transformer);
47
//	}
48

    
49
	/**
50
	 * Constructor.
51
	 * @param uri
52
	 * @param destination
53
	 */
54
	private ExcelStreamImportConfigurator(URI uri, ICdmDataSource destination, NomenclaturalCode nomenclaturalCode, DbSchemaValidation dbSchemaValidation) {
55
		super(uri, destination, defaultTransformer);
56
		setDbSchemaValidation(dbSchemaValidation);
57
		setNomenclaturalCode(nomenclaturalCode);
58
	}
59

    
60
	/**
61
     * Constructor.
62
     * @param uri
63
     * @param destination
64
     */
65
    private ExcelStreamImportConfigurator(InputStream stream, ICdmDataSource destination, NomenclaturalCode nomenclaturalCode, DbSchemaValidation dbSchemaValidation) {
66
        super(null, destination, defaultTransformer);
67
        setDbSchemaValidation(dbSchemaValidation);
68
        setNomenclaturalCode(nomenclaturalCode);
69
        this.stream = stream;
70
    }
71

    
72
	/* (non-Javadoc)
73
	 * @see eu.etaxonomy.cdm.io.common.IImportConfigurator#getNewState()
74
	 */
75
	@Override
76
	public ExcelStreamImportState getNewState() {
77
		return new ExcelStreamImportState(this);
78
	}
79

    
80
	/* (non-Javadoc)
81
	 * @see eu.etaxonomy.cdm.io.common.ImportConfiguratorBase#makeIoClassList()
82
	 */
83
	@SuppressWarnings("unchecked")
84
	@Override
85
	protected void makeIoClassList() {
86
		ioClassList = new Class[]{
87
				ExcelStreamImport.class
88
		};
89
	}
90

    
91

    
92
	/* (non-Javadoc)
93
	 * @see eu.etaxonomy.cdm.io.dwca.in.StreamImportConfiguratorBase#getDefaultSourceReferenceTitle()
94
	 */
95
	@Override
96
	protected String getDefaultSourceReferenceTitle() {
97
		return DEFAULT_REF_TITLE;
98
	}
99

    
100
}
(4-4/6)