refactoring to change the specific (I)CdmDataSource to the more generic (I)CdmSource...
[taxeditor.git] / eu.etaxonomy.taxeditor.store / src / main / java / eu / etaxonomy / taxeditor / view / datasource / handler / UpdateDataSourceHandler.java
index 0d51b22e19d7049d6f244e5f67e7e5076deba6ae..1d1bb51ea5d9861b45280fc4cd4c5c3e7fe53dda 100644 (file)
@@ -21,6 +21,8 @@ import org.eclipse.swt.widgets.Display;
 import org.eclipse.ui.handlers.HandlerUtil;
 import org.eclipse.ui.progress.IProgressConstants;
 
+import eu.etaxonomy.cdm.config.ICdmSource;
+import eu.etaxonomy.cdm.database.ICdmDataSource;
 import eu.etaxonomy.cdm.database.update.CdmUpdater;
 import eu.etaxonomy.taxeditor.model.CdmProgressMonitorAdapter;
 import eu.etaxonomy.taxeditor.store.StoreUtil;
@@ -51,15 +53,17 @@ public class UpdateDataSourceHandler extends AbstractDataSourceHandler {
                                "Are you sure you want to update the datasource?", SWT.NONE)){
                        return false;
                }
-               Job job = new Job("Updating datasource " + container.getDataSource().getName()){
+               Job job = new Job("Updating datasource " + container.getCdmSource().getName()){
 
                        @Override
                        protected IStatus run(IProgressMonitor monitor) {
                                CdmUpdater updater = new CdmUpdater();
                                IStatus status = null;
-
+                               ICdmSource cdmSource = container.getCdmSource();
+                               //FIXME:Remoting we need another updater for ICdmRemoteSource
+                               if(cdmSource instanceof ICdmDataSource) {
                                try{
-                                       if(updater.updateToCurrentVersion(container.getDataSource(), CdmProgressMonitorAdapter.CreateMonitor(monitor))){
+                                       if(updater.updateToCurrentVersion((ICdmDataSource)cdmSource, CdmProgressMonitorAdapter.CreateMonitor(monitor))){
                                                display.asyncExec(new Runnable(){
 
                                                        @Override
@@ -78,7 +82,7 @@ public class UpdateDataSourceHandler extends AbstractDataSourceHandler {
                                        status = new Status(IStatus.ERROR, TaxeditorStorePlugin.PLUGIN_ID, e.getMessage(), e);
                                        StoreUtil.errorDialog("Could not run updater", getClass(), status.getMessage());
                                }
-
+                               }
 
                                return status;
                        }