/* * Copyright 2010 Red Hat, Inc. and/or its affiliates. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.guvnor.tools.actions; import java.io.IOException; import java.io.InputStream; import java.net.URL; import java.text.MessageFormat; import java.util.Properties; import org.eclipse.core.resources.IFile; import org.eclipse.core.runtime.IStatus; import org.eclipse.jface.action.IAction; import org.eclipse.jface.dialogs.MessageDialog; import org.eclipse.jface.viewers.ISelection; import org.eclipse.jface.viewers.IStructuredSelection; import org.eclipse.jface.wizard.WizardDialog; import org.eclipse.swt.widgets.Display; import org.eclipse.ui.IObjectActionDelegate; import org.eclipse.ui.IWorkbenchPart; import org.eclipse.webdav.IResponse; import org.guvnor.tools.Activator; import org.guvnor.tools.GuvnorRepository; import org.guvnor.tools.Messages; import org.guvnor.tools.utils.GuvnorMetadataProps; import org.guvnor.tools.utils.GuvnorMetadataUtils; import org.guvnor.tools.utils.PlatformUtils; import org.guvnor.tools.utils.webdav.IWebDavClient; import org.guvnor.tools.utils.webdav.WebDavClientFactory; import org.guvnor.tools.utils.webdav.WebDavException; import org.guvnor.tools.utils.webdav.WebDavServerCache; import org.guvnor.tools.views.RepositoryView; import org.guvnor.tools.views.ResourceHistoryView; import org.guvnor.tools.views.model.TreeObject; import org.guvnor.tools.views.model.TreeParent; import org.guvnor.tools.wizards.EditRepLocationWizard; /** * Shows the revision history for a given resource. */ public class EditConnectionAction implements IObjectActionDelegate { private GuvnorRepository rep; public EditConnectionAction() { super(); } /* * (non-Javadoc) * @see org.eclipse.ui.IObjectActionDelegate#setActivePart(org.eclipse.jface.action.IAction, org.eclipse.ui.IWorkbenchPart) */ public void setActivePart(IAction action, IWorkbenchPart targetPart) { } /* * (non-Javadoc) * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction) */ public void run(IAction action) { EditRepLocationWizard editWizard = new EditRepLocationWizard(rep); editWizard.init(Activator.getDefault().getWorkbench(), null); WizardDialog dialog = new WizardDialog(Display.getCurrent().getActiveShell(), editWizard); dialog.create(); dialog.open(); } /* * (non-Javadoc) * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection) */ public void selectionChanged(IAction action, ISelection selection) { // Reset state to default action.setEnabled(false); if (!(selection instanceof IStructuredSelection)) { return; } IStructuredSelection sel = (IStructuredSelection)selection; if (sel.size() != 1) { return; } if (sel.getFirstElement() instanceof TreeObject) { if (((TreeObject)sel.getFirstElement()).getNodeType() == TreeObject.Type.REPOSITORY) { rep = ((TreeObject)sel.getFirstElement()).getGuvnorRepository(); action.setEnabled(true); } } } }