import org.eclipse.core.commands.ExecutionEvent;
import org.eclipse.core.runtime.IStatus;
+import org.eclipse.jface.wizard.Wizard;
import org.eclipse.jface.wizard.WizardDialog;
import org.eclipse.ui.handlers.HandlerUtil;
+import eu.etaxonomy.cdm.config.ICdmSource;
+import eu.etaxonomy.cdm.database.ICdmDataSource;
import eu.etaxonomy.taxeditor.datasource.wizard.CdmDataSourceWizard;
import eu.etaxonomy.taxeditor.store.StoreUtil;
import eu.etaxonomy.taxeditor.view.datasource.CdmDataSourceViewPart;
@Override
public boolean specificExecute(ExecutionEvent event) {
CdmMetaDataAwareDataSourceContainer container = getSelectedDataSourceContainer(event);
-
- CdmDataSourceWizard wizard = new CdmDataSourceWizard(container.getDataSource());
- WizardDialog dialog = new WizardDialog(HandlerUtil.getActiveShell(event), wizard);
-
- int result = dialog.open();
-
- if(result == IStatus.OK){
- CdmDataSourceViewPart view = (CdmDataSourceViewPart) StoreUtil.getView(CdmDataSourceViewPart.ID, false);
- if(view != null){
- container.getMetaDataFromDataSource();
- view.getViewer().update(new CdmMetaDataAwareDataSourceContainer[]{container}, null);
-
- }
+ ICdmSource cdmSource = container.getCdmSource();
+ //FIXME:Remoting we need another wizard for ICdmRemoteSource
+ if(cdmSource instanceof ICdmDataSource) {
+ Wizard wizard = new CdmDataSourceWizard((ICdmDataSource)cdmSource, CdmDataSourceWizard.Mode.EDIT);
+ WizardDialog dialog = new WizardDialog(HandlerUtil.getActiveShell(event), wizard);
+
+ int result = dialog.open();
+
+ if(result == IStatus.OK){
+ CdmDataSourceViewPart view = (CdmDataSourceViewPart) StoreUtil.getView(CdmDataSourceViewPart.ID, false);
+ if(view != null){
+ container.getMetaDataFromDataSource();
+ view.getViewer().update(new CdmMetaDataAwareDataSourceContainer[]{container}, null);
+
+ }
+ }
}
-
- return false;
+
+ return false;
}
}