Project

General

Profile

Download (2.54 KB) Statistics
| Branch: | Tag: | Revision:
1
/**
2
* Copyright (C) 2007 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

    
10
package eu.etaxonomy.cdm.io.berlinModel.out;
11

    
12
import java.sql.ResultSet;
13
import java.sql.SQLException;
14
import java.util.Map;
15

    
16
import org.apache.log4j.Logger;
17

    
18
import eu.etaxonomy.cdm.io.common.CdmExportBase;
19
import eu.etaxonomy.cdm.io.common.ICdmExport;
20
import eu.etaxonomy.cdm.io.common.MapWrapper;
21
import eu.etaxonomy.cdm.io.common.Source;
22
import eu.etaxonomy.cdm.model.common.CdmBase;
23

    
24
/**
25
 * @author a.mueller
26
 * @created 20.03.2008
27
 * @version 1.0
28
 * <IExportConfigurator>
29
 */
30
public abstract class BerlinModelExportBase<T extends CdmBase> extends CdmExportBase<BerlinModelExportConfigurator, BerlinModelExportState> implements ICdmExport<BerlinModelExportConfigurator, BerlinModelExportState> {
31
	private static final Logger logger = Logger.getLogger(BerlinModelExportBase.class);
32
	
33
	public BerlinModelExportBase() {
34
		super();
35
	}
36
	
37
//	protected abstract boolean doInvoke(BerlinModelExportState<BerlinModelExportConfigurator> state);
38
	
39
//	/* (non-Javadoc)
40
//	 * @see eu.etaxonomy.cdm.io.common.CdmIoBase#doInvoke(eu.etaxonomy.cdm.io.common.IImportConfigurator, eu.etaxonomy.cdm.api.application.CdmApplicationController, java.util.Map)
41
//	 */
42
//	protected boolean doInvoke(BerlinModelExportConfigurator config, 
43
//			Map<String, MapWrapper<? extends CdmBase>> stores){ 
44
//		BerlinModelExportState state = ((BerlinModelExportConfigurator)config).getState();
45
//		state.setConfig((BerlinModelExportConfigurator)config);
46
//		return doInvoke(state);
47
//	}
48
	
49
	protected boolean checkSqlServerColumnExists(Source source, String tableName, String columnName){
50
		String strQuery = "SELECT  Count(t.id) as n " +
51
				" FROM sysobjects AS t " +
52
				" INNER JOIN syscolumns AS c ON t.id = c.id " +
53
				" WHERE (t.xtype = 'U') AND " + 
54
				" (t.name = '" + tableName + "') AND " + 
55
				" (c.name = '" + columnName + "')";
56
		ResultSet rs = source.getResultSet(strQuery) ;		
57
		int n;
58
		try {
59
			rs.next();
60
			n = rs.getInt("n");
61
			return n>0;
62
		} catch (SQLException e) {
63
			e.printStackTrace();
64
			return false;
65
		}
66
		
67
	}
68
	
69
	public abstract Class<? extends CdmBase> getStandardMethodParameter();
70
	
71
	protected void doCount(int count, int modCount, String pluralString){
72
		if ((count % modCount ) == 0 && count!= 0 ){ logger.info(pluralString + " handled: " + (count));}
73
	}
74
	
75
}
(3-3/14)