Project

General

Profile

« Previous | Next » 

Revision a3e4322e

Added by Andreas Müller over 9 years ago

add bgbm instance updater

View differences:

.gitattributes
111 111
app-import/src/main/java/eu/etaxonomy/cdm/app/wp6/palmae/PalmaeTaxonXImportActivator.java -text
112 112
app-import/src/main/java/eu/etaxonomy/cdm/app/wp6/palmae/UseImport.java -text
113 113
app-import/src/main/java/eu/etaxonomy/cdm/app/wp6/palmae/config/PalmaeProtologueImportConfigurator.java -text
114
app-import/src/main/java/eu/etaxonomy/cdm/database/update/BgbmInstancesUpdater.java -text
114 115
app-import/src/main/java/eu/etaxonomy/cdm/io/PalmaeImageImport.java -text
115 116
app-import/src/main/java/eu/etaxonomy/cdm/io/PalmaeProtologueImport.java -text
116 117
app-import/src/main/java/eu/etaxonomy/cdm/io/ProtologueImport.java -text
app-import/src/main/java/eu/etaxonomy/cdm/database/update/BgbmInstancesUpdater.java
1
/**
2
 * 
3
 */
4
package eu.etaxonomy.cdm.database.update;
5

  
6
import org.apache.log4j.Logger;
7

  
8
import eu.etaxonomy.cdm.api.application.CdmApplicationController;
9
import eu.etaxonomy.cdm.common.AccountStore;
10
import eu.etaxonomy.cdm.common.monitor.DefaultProgressMonitor;
11
import eu.etaxonomy.cdm.database.CdmDataSource;
12
import eu.etaxonomy.cdm.database.DbSchemaValidation;
13
import eu.etaxonomy.cdm.database.ICdmDataSource;
14
import eu.etaxonomy.cdm.io.api.application.CdmIoApplicationController;
15
import eu.etaxonomy.cdm.model.taxon.Classification;
16

  
17
/**
18
 * @author a.mueller
19
 *
20
 */
21
public class BgbmInstancesUpdater {
22
	private static final Logger logger = Logger.getLogger(BgbmInstancesUpdater.class);
23
	
24
	private static String integrationServer = "160.45.63.201";
25
	private static String productionServer = "160.45.63.171";
26
	private static String testServer = "160.45.63.175";
27
	
28
	private static String[] integrationDatabases = new String[]{/**/"cdm_integration_cichorieae",
29
		"cdm_integration_cyprus", "cdm_integration_diptera",  "cdm_integration_flora_malesiana",
30
		"cdm_integration_palmae"};
31
	
32
	private static String[] testDatabases = new String[]{/**/"caryo", "cdm_campanulaceae", 
33
		"cdm_campanulaceae_082014","cdm_col","cdm_corvidae","cdm_cyprus","cdm_demo1","cdm_demo2",
34
		"cdm_demo3", "cdm_edit_algaterra","cdm_edit_cichorieae","cdm_edit_flora_central_africa",
35
		"cdm_edit_flora_malesiana","cdm_edit_globis","cdm_edit_palmae", 
36
		"cdm_ipni_Caryophyllaceae","cdm_mt_standardliste",
37
		"cdm_pesi_euromed",  "cdm_pesi_fauna_europaea",
38
		"cdm_rl_mammalia","cdm_test_eckhard","cdm_test_euromed","cdm_test_gabi",
39
		"cdm_test_norbert","cdm_test_sabine","cdm_vibrant_index"};
40
	
41
	private static String[] testDatabasesInnoDb = new String[]{/**/"cdm_bgbm_edit_usergroup",
42
		"cdm_edit_ildis","cdm_flora_guianas","cdm_flore_gabon","cdm_mt_moose","cdm_pesi_erms",
43
		"cdm_proibiosphere_chenopodium_pilot",};
44
	private static String[] testDatabasesOthers = new String[]{"cdm_caryo_amaranthaceae",
45
		"cdm_caryo_caryophyllales","cdm_flora_malesiana_prospective","cdm_pesi_all","cdm_salvador",
46
		};
47
	
48
	private static String[] productionDatabases = new String[]{"cdm_integration_cichorieae",};
49

  
50
	static BgbmServer bgbmServer = BgbmServer.TEST;
51
	
52
	
53
	
54
	static String username = "edit";
55
	
56
	
57
	
58
	/**
59
	 * @param args
60
	 */
61
	public static void  main(String[] args) {
62
		DbSchemaValidation schema = DbSchemaValidation.VALIDATE;
63
    	String server = bgbmServer.server;
64
    	for (String database : bgbmServer.databases){
65
    		boolean result = true;
66
    		logger.warn("Update: " + database + " ... ");
67
    		ICdmDataSource dataSource = CdmDataSource.NewMySqlInstance(server, database, username, AccountStore.readOrStorePassword(server, database, username, null));
68
    		try {
69
    			CdmUpdater updater = new CdmUpdater();
70
    			//result = updater.updateToCurrentVersion(dataSource, DefaultProgressMonitor.NewInstance());
71
    			CdmApplicationController appCtr = CdmIoApplicationController.NewInstance(dataSource,schema);
72
    			System.out.println(appCtr.getClassificationService().count(Classification.class));
73
    		} catch (Exception e) {
74
    			result = false;
75
    			e.printStackTrace();
76
    		}	
77
    		if(!result ){
78
    			logger.warn("Problem");
79
    			break;
80
    		}
81
    		
82
    		logger.warn("Update: " + database + " ... DONE ");
83
    	}
84
    	
85
    	
86
	}
87
	
88
	private enum BgbmServer{
89
		INTEGRATION (integrationServer, integrationDatabases),
90
		TEST(testServer,testDatabases),
91
		PRODUCTION(productionServer,productionDatabases);
92
		private String server;
93
		private String[] databases;
94
		private BgbmServer(String server, String[] databases){
95
			this.server = server;
96
			this.databases = databases;
97
		}
98
		
99
		
100
		
101
	}
102
}

Also available in: Unified diff