add generic config to ExcelImportState
[cdmlib.git] / cdmlib-io / src / main / java / eu / etaxonomy / cdm / io / common / IoConfiguratorBase.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 org.apache.log4j.Logger;
10
11 import eu.etaxonomy.cdm.api.application.CdmApplicationController;
12 import eu.etaxonomy.cdm.common.IProgressMonitor;
13 import eu.etaxonomy.cdm.common.NullProgressMonitor;
14 import eu.etaxonomy.cdm.database.DbSchemaValidation;
15 import eu.etaxonomy.cdm.io.common.IImportConfigurator.DO_REFERENCES;
16
17 /**
18 * @author a.babadshanjan
19 * @created 16.11.2008
20 */
21 public abstract class IoConfiguratorBase implements IIoConfigurator{
22 @SuppressWarnings("unused")
23 private static final Logger logger = Logger.getLogger(IoConfiguratorBase.class);
24
25 //im-/export uses Classification for is_taxonomically_included_in relationships
26 private boolean useClassification = true;
27
28 // protected Class<ICdmIO>[] ioClassList;
29 private DbSchemaValidation dbSchemaValidation = DbSchemaValidation.VALIDATE;
30
31 private CdmApplicationController cdmApp = null;
32
33
34 //etc
35
36 private IProgressMonitor progressMonitor;
37
38
39 /* (non-Javadoc)
40 * @see eu.etaxonomy.cdm.io.common.IIoConfigurator#getDbSchemaValidation()
41 */
42 public DbSchemaValidation getDbSchemaValidation() {
43 return dbSchemaValidation;
44 }
45
46 /* (non-Javadoc)
47 * @see eu.etaxonomy.cdm.io.common.IIoConfigurator#setDbSchemaValidation(eu.etaxonomy.cdm.database.DbSchemaValidation)
48 */
49 public void setDbSchemaValidation(DbSchemaValidation dbSchemaValidation) {
50 this.dbSchemaValidation = dbSchemaValidation;
51 }
52
53 public CdmApplicationController getCdmAppController(){
54 return this.cdmApp;
55 }
56
57 /**
58 * @param cdmApp the cdmApp to set
59 */
60 public void setCdmAppController(CdmApplicationController cdmApp) {
61 this.cdmApp = cdmApp;
62 }
63
64 /**
65 * @return the useClassification
66 */
67 public boolean isUseClassification() {
68 return useClassification;
69 }
70
71
72 /**
73 * @param useClassification the useClassification to set
74 */
75 public void setUseClassification(boolean useClassification) {
76 this.useClassification = useClassification;
77 }
78
79 @Override
80 public void setProgressMonitor(IProgressMonitor monitor) {
81 this.progressMonitor = monitor;
82 }
83
84 public IProgressMonitor getProgressMonitor(){
85 return progressMonitor != null ? progressMonitor : new NullProgressMonitor();
86 }
87 }