// $Id$
/**
* Copyright (C) 2007 EDIT
- * European Distributed Institute of Taxonomy
+ * European Distributed Institute of Taxonomy
* http://www.e-taxonomy.eu
- *
+ *
* The contents of this file are subject to the Mozilla Public License Version 1.1
* See LICENSE.TXT at the top of this package for the full license terms.
*/
import org.eclipse.core.runtime.Status;
import org.eclipse.core.runtime.jobs.Job;
import org.eclipse.swt.widgets.Display;
-import org.hibernate.collection.internal.AbstractPersistentCollection;
-import org.hibernate.proxy.AbstractLazyInitializer;
import org.springframework.core.io.Resource;
import eu.etaxonomy.cdm.api.application.CdmApplicationController;
import eu.etaxonomy.cdm.api.application.CdmApplicationRemoteController;
import eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration;
-import eu.etaxonomy.cdm.config.ICdmSource;
-import eu.etaxonomy.cdm.remote.ICdmRemoteSource;
import eu.etaxonomy.cdm.config.CdmSourceException;
-import eu.etaxonomy.cdm.database.DatabaseTypeEnum;
+import eu.etaxonomy.cdm.config.ICdmSource;
import eu.etaxonomy.cdm.database.DbSchemaValidation;
import eu.etaxonomy.cdm.database.ICdmDataSource;
import eu.etaxonomy.cdm.model.metadata.CdmMetaData;
-import eu.etaxonomy.cdm.model.metadata.CdmMetaData.MetaDataPropertyName;
import eu.etaxonomy.taxeditor.model.CdmProgressMonitorAdapter;
+import eu.etaxonomy.taxeditor.model.MessagingUtils;
+import eu.etaxonomy.taxeditor.remoting.source.ICdmRemoteSource;
import eu.etaxonomy.taxeditor.ui.dialog.LoginDialog;
import eu.etaxonomy.taxeditor.view.datasource.CdmDataSourceViewPart;
CdmProgressMonitorAdapter subprogressMonitor = CdmProgressMonitorAdapter
.CreateSubMonitor(monitor, 7);
// This is where we instantiate the application controller
+ int oldPriority = Thread.currentThread().getPriority();
try {
-
+ Thread.currentThread().setPriority(10);
applicationController = getApplicationController(cdmSource,subprogressMonitor);
-
} catch (Exception e) {
if(! causeIsCancelationExceptionRecursive(e)){
return new Status(IStatus.ERROR, "Could not connect to CDM Store", "An error occurred while trying to connect to datasource: " + cdmSource.getName(), e);
}
} finally {
monitor.done();
+ Thread.currentThread().setPriority(oldPriority);
}
}
-
-
+
+
if (!monitor.isCanceled()) {
CdmStore.setInstance(applicationController, cdmSource);
display.asyncExec(new Runnable() {
/*
* (non-Javadoc)
- *
+ *
* @see java.lang.Runnable#run()
*/
@Override
}
});
- StoreUtil.info("Application context initialized.");
+ MessagingUtils.info("Application context initialized.");
return Status.OK_STATUS;
} else {
// Show datasource view if not shown yet
display.asyncExec(new Runnable() {
/*
* (non-Javadoc)
- *
+ *
* @see java.lang.Runnable#run()
*/
@Override
private ICdmApplicationConfiguration getApplicationController(ICdmSource cdmSource, CdmProgressMonitorAdapter subprogressMonitor) {
if(cdmSource instanceof ICdmDataSource) {
- return CdmApplicationController.NewInstance(applicationContextBean,
- (ICdmDataSource)cdmSource,
+ return CdmApplicationController.NewInstance(applicationContextBean,
+ (ICdmDataSource)cdmSource,
dbSchemaValidation,
- false,
+ false,
subprogressMonitor);
} else if(cdmSource instanceof ICdmRemoteSource) {
- return CdmApplicationRemoteController.NewInstance((ICdmRemoteSource)cdmSource,
- false,
+ return CdmApplicationRemoteController.NewInstance((ICdmRemoteSource)cdmSource,
+ false,
subprogressMonitor,
null);
} else {
if (!result) {
// Show an error message
- StoreUtil
- .errorDialog(
+ MessagingUtils
+ .messageDialog(
"DatabaseCompatibilityCheck failed",
this,
"The database schema for the chosen "
return causeIsCancelationExceptionRecursive(throwable.getCause());
}
}
-
+
private void checkDatabaseReachable(IProgressMonitor monitor) {
try {
monitor.subTask("Checking if datasource is reachable.");
cdmSource.checkConnection();
monitor.worked(1);
} catch (CdmSourceException e) {
- StoreUtil.errorDialog("Could not connect to chosen datasource",
+ MessagingUtils.messageDialog("Could not connect to chosen datasource",
this, "Reason: " + e.getMessage(), e);
monitor.setCanceled(true);
- }
+ }
}
}