Show ConnectProjectToServerAction.java syntax highlighted
package ca.ucalgary.cpsc.ebe.fitClipse.actions;
import org.eclipse.core.internal.resources.Project;
import org.eclipse.core.resources.IProject;
import org.eclipse.core.runtime.QualifiedName;
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.swt.widgets.Shell;
import org.eclipse.ui.IActionDelegate;
import org.eclipse.ui.PlatformUI;
import ca.ucalgary.cpsc.ebe.fitClipse.connector.IServerConnector;
import ca.ucalgary.cpsc.ebe.fitClipse.connector.ServerConfiguration;
import ca.ucalgary.cpsc.ebe.fitClipse.connector.ServerConnectorFactory;
import ca.ucalgary.cpsc.ebe.fitClipse.ui.testHierarchy.TestHierarchyController;
import ca.ucalgary.cpsc.ebe.fitClipse.ui.testHierarchy.TestHierarchyView;
public class ConnectProjectToServerAction implements IActionDelegate {
ISelection selection = null;
public void run(IAction action) {
try {
if (selection instanceof IStructuredSelection) {
IStructuredSelection ss = (IStructuredSelection) selection;
if (ss.getFirstElement().getClass() == Project.class) {
IProject project = (IProject) (ss.getFirstElement());
login(project);
TestHierarchyView testView = TestHierarchyController
.getTestHierarchyView();
testView.refreshView();
} else {
return;
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
public void selectionChanged(IAction action, ISelection selection) {
this.selection = selection;
}
public void login(IProject project) {
ServerConfiguration config = ServerConfiguration.getInstance();
try {
config.setWebPath(project.getPersistentProperty(new QualifiedName(
"ca.ucalgary.cpsc.ebe.fitClipse", "server.webPath")));
config.setHost(project.getPersistentProperty(new QualifiedName(
"ca.ucalgary.cpsc.ebe.fitClipse", "server.host")));
// config.setBeanPort(project.getPersistentProperty(new QualifiedName(
// "ca.ucalgary.cpsc.ebe.fitClipse", "server.beanPort")));
config.setWebPort(project.getPersistentProperty(new QualifiedName(
"ca.ucalgary.cpsc.ebe.fitClipse", "server.webPort")));
config.setUsername(project.getPersistentProperty(new QualifiedName(
"ca.ucalgary.cpsc.ebe.fitClipse", "server.username")));
config.setPassword(project.getPersistentProperty(new QualifiedName(
"ca.ucalgary.cpsc.ebe.fitClipse", "server.password")));
config.setProjectNameSpace(project
.getPersistentProperty(new QualifiedName(
"ca.ucalgary.cpsc.ebe.fitClipse",
"project.namespace")));
config.setServerType(project
.getPersistentProperty(new QualifiedName(
"ca.ucalgary.cpsc.ebe.fitClipse", "server.type")));
IServerConnector sc = ServerConnectorFactory.getServerInstance(config);
if(sc==null){
Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow()
.getShell();
MessageDialog.openError(shell, "Error", "Unable to connect to server: "
+ config.getHost() + ":" + config.getWebPort()
+ " is unreachable.");
}
} catch (Exception e) {
e.printStackTrace();
return;
}
}
}
See more files for this project here