Project

General

Profile

Download (5.15 KB) Statistics
| Branch: | Revision:
1
// $Id$
2
/**
3
* Copyright (C) 2007 EDIT
4
* European Distributed Institute of Taxonomy 
5
* http://www.e-taxonomy.eu
6
* 
7
* The contents of this file are subject to the Mozilla Public License Version 1.1
8
* See LICENSE.TXT at the top of this package for the full license terms.
9
*/
10

    
11
package eu.etaxonomy.cdm.app.globis;
12

    
13
import java.util.UUID;
14

    
15
import org.apache.log4j.Logger;
16

    
17
import eu.etaxonomy.cdm.api.application.ICdmApplicationDefaultConfiguration;
18
import eu.etaxonomy.cdm.app.common.CdmDestinations;
19
import eu.etaxonomy.cdm.app.common.CdmImportSources;
20
import eu.etaxonomy.cdm.database.DbSchemaValidation;
21
import eu.etaxonomy.cdm.database.ICdmDataSource;
22
import eu.etaxonomy.cdm.io.common.CdmDefaultImport;
23
import eu.etaxonomy.cdm.io.common.IImportConfigurator.CHECK;
24
import eu.etaxonomy.cdm.io.common.IImportConfigurator.DO_REFERENCES;
25
import eu.etaxonomy.cdm.io.common.Source;
26
import eu.etaxonomy.cdm.io.globis.GlobisImportConfigurator;
27
import eu.etaxonomy.cdm.model.common.ISourceable;
28
import eu.etaxonomy.cdm.model.name.NomenclaturalCode;
29
import eu.etaxonomy.cdm.model.name.ZoologicalName;
30

    
31
/**
32
 * @author a.mueller
33
 * @created 14.04.2010
34
 * @version 1.0
35
 */
36
public class GlobisActivator {
37
	private static final Logger logger = Logger.getLogger(GlobisActivator.class);
38

    
39
	//database validation status (create, update, validate ...)
40
	static DbSchemaValidation hbm2dll = DbSchemaValidation.CREATE;
41
	static final Source globisSource = CdmImportSources.GLOBIS_MDB_20120928();
42
//	static final ICdmDataSource cdmDestination = CdmDestinations.localH2();
43
//	static final ICdmDataSource cdmDestination = CdmDestinations.cdm_test_local_mysql();
44
	static final ICdmDataSource cdmDestination = CdmDestinations.cdm_globis_dev();
45
	
46
	
47
	
48
	static final UUID classificationUuid = UUID.fromString("8bd27d84-fd4f-4bfa-bde0-3e6b7311b334");
49
	static final UUID featureTreeUuid = UUID.fromString("33cbf7a8-0c47-4d47-bd11-b7d77a38d0f6");
50
	//static final Object[] featureKeyList = new Integer[]{1,4,5,10,11,12,13,14, 249, 250, 251, 252, 253};
51
	
52
	static final String classificationName = "Globis";
53
	static final String sourceReferenceTitle = "globis database";
54
	
55
	static final String imageBaseUrl = "http://globis-images.insects-online.de/images/";
56
	
57
	//check - import
58
	static final CHECK check = CHECK.IMPORT_WITHOUT_CHECK;
59

    
60
	static final int partitionSize = 3000;
61

    
62

    
63
	//NomeclaturalCode
64
	static final NomenclaturalCode nomenclaturalCode = NomenclaturalCode.ICZN;
65

    
66
	
67
	static final boolean doReadMediaData = false;
68
	
69
//	//ignore null
70
	static final boolean ignoreNull = true;
71
	
72
// ***************** ALL ************************************************//
73
	
74
	//references
75
	static final DO_REFERENCES doReferences =  DO_REFERENCES.ALL;
76
	
77
	//taxa
78
	static final boolean doCurrentTaxa = true;
79
	static final boolean doSpecTaxa = true;
80
	static final boolean doImages = true;
81
	static final boolean doCommonNames = true;
82
	
83
	
84
//******************** NONE ***************************************//
85
	
86

    
87
//	//references
88
//	static final DO_REFERENCES doReferences =  DO_REFERENCES.NONE;
89
//	
90
//	//taxa
91
//	static final boolean doCurrentTaxa = true;
92
//	static final boolean doSpecTaxa = false;
93
//	static final boolean doImages = false;
94
//	static final boolean doCommonNames = true;
95

    
96
//	
97
	
98
	
99
	/**
100
	 * @param args
101
	 */
102
	public static void main(String[] args) {
103
		System.out.println("Start import from ("+ globisSource.getDatabase() + ") ...");
104
		
105
		//make Globis Source
106
		Source source = globisSource;
107
		ICdmDataSource destination = CdmDestinations.chooseDestination(args) != null ? CdmDestinations.chooseDestination(args) : cdmDestination;
108
		
109
		GlobisImportConfigurator config = GlobisImportConfigurator.NewInstance(source,  destination);
110
		
111
		config.setClassificationUuid(classificationUuid);
112
		config.setNomenclaturalCode(nomenclaturalCode);
113

    
114
		config.setIgnoreNull(ignoreNull);
115
		config.setDoReadMediaData(doReadMediaData);
116
		config.setDoReferences(doReferences);
117
		
118
		config.setDoCurrentTaxa(doCurrentTaxa);
119
		config.setDoSpecTaxa(doSpecTaxa);
120
		config.setDoImages(doImages);
121
		config.setImageBaseUrl(imageBaseUrl);
122
		
123
		config.setDbSchemaValidation(hbm2dll);
124
		config.setCheck(check);
125
		config.setRecordsPerTransaction(partitionSize);
126
		config.setClassificationName(classificationName);
127
		config.setSourceReferenceTitle(sourceReferenceTitle);
128

    
129
		// invoke import
130
		CdmDefaultImport<GlobisImportConfigurator> globisImport = new CdmDefaultImport<GlobisImportConfigurator>();
131
		globisImport.invoke(config);
132
		
133
		if (config.getCheck().equals(CHECK.CHECK_AND_IMPORT)  || config.getCheck().equals(CHECK.IMPORT_WITHOUT_CHECK)    ){
134
			ICdmApplicationDefaultConfiguration app = globisImport.getCdmAppController();
135
			ISourceable obj = app.getCommonService().getSourcedObjectByIdInSource(ZoologicalName.class, "1000027", null);
136
			logger.info(obj);
137
			
138
//			//make feature tree
139
//			FeatureTree tree = TreeCreator.flatTree(featureTreeUuid, ermsImportConfigurator.getFeatureMap(), featureKeyList);
140
//			app = ermsImport.getCdmAppController();
141
//			app.getFeatureTreeService().saveOrUpdate(tree);
142
		}
143
		System.out.println("End import from ("+ source.getDatabase() + ")...");
144
	}
145

    
146

    
147
}
    (1-1/1)