some changes to the update script
[cdmlib.git] / cdmlib-io / src / main / java / eu / etaxonomy / cdm / io / common / IExportConfigurator.java
1 /**
2 * Copyright (C) 2008 EDIT
3 * European Distributed Institute of Taxonomy
4 * http://www.e-taxonomy.eu
5 */
6
7 package eu.etaxonomy.cdm.io.common;
8
9 import eu.etaxonomy.cdm.database.ICdmDataSource;
10 import eu.etaxonomy.cdm.io.common.mapping.out.IExportTransformer;
11
12
13 /**
14 * @author a.babadshanjan
15 * @created 16.11.2008
16 * @version 1.0
17 */
18 public interface IExportConfigurator<STATE extends ExportStateBase, TRANSFORM extends IExportTransformer> extends IIoConfigurator {
19
20 public static enum CHECK{
21 CHECK_ONLY,
22 EXPORT_WITHOUT_CHECK,
23 CHECK_AND_EXPORT,
24 }
25
26 public static enum DO_REFERENCES{
27 NONE,
28 NOMENCLATURAL,
29 CONCEPT_REFERENCES,
30 ALL
31 }
32
33 public boolean isValid();
34
35
36 public CHECK getCheck();
37
38 public Class<ICdmIO>[] getIoClassList();
39
40
41 /**
42 * The CDM data source for the export
43 * Don't use when using a spring data source
44 * @return
45 */
46 public ICdmDataSource getSource();
47
48 public void setSource(ICdmDataSource source);
49
50 /**
51 * Factory method. Creates a new state for the export type and adds this coniguration to it.
52 * @return
53 */
54 public STATE getNewState();
55
56
57 public TRANSFORM getTransformer();
58
59 public void setTransformer(TRANSFORM transformer);
60
61
62 }