diff options
Diffstat (limited to 'tags/java/sca/2.0-M1/tools/eclipse/plugins/core/org/apache/tuscany/sca/plugin/core/launch')
7 files changed, 0 insertions, 818 deletions
diff --git a/tags/java/sca/2.0-M1/tools/eclipse/plugins/core/org/apache/tuscany/sca/plugin/core/launch/DomainManagerLauncherUtil.java b/tags/java/sca/2.0-M1/tools/eclipse/plugins/core/org/apache/tuscany/sca/plugin/core/launch/DomainManagerLauncherUtil.java deleted file mode 100644 index 060f6ff6cb..0000000000 --- a/tags/java/sca/2.0-M1/tools/eclipse/plugins/core/org/apache/tuscany/sca/plugin/core/launch/DomainManagerLauncherUtil.java +++ /dev/null @@ -1,255 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you 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.apache.tuscany.sca.plugin.core.launch; - -import static org.apache.tuscany.sca.plugin.core.launch.TuscanyLaunchConfigurationDelegate.TUSCANY_LAUNCH_CONFIGURATIONTYPE; - -import java.io.BufferedReader; -import java.io.ByteArrayInputStream; -import java.io.IOException; -import java.io.InputStreamReader; -import java.io.OutputStream; -import java.net.Socket; - -import org.apache.tuscany.sca.plugin.core.classpath.CoreClasspathContainer; -import org.apache.tuscany.sca.plugin.core.classpath.RuntimeClasspathContainerInitializerExtensionPoint; -import org.eclipse.core.resources.IFile; -import org.eclipse.core.resources.IProject; -import org.eclipse.core.resources.IProjectDescription; -import org.eclipse.core.resources.ResourcesPlugin; -import org.eclipse.core.runtime.CoreException; -import org.eclipse.core.runtime.IProgressMonitor; -import org.eclipse.core.runtime.Path; -import org.eclipse.core.runtime.SubProgressMonitor; -import org.eclipse.debug.core.DebugPlugin; -import org.eclipse.debug.core.ILaunchConfiguration; -import org.eclipse.debug.core.ILaunchConfigurationType; -import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy; -import org.eclipse.debug.core.ILaunchManager; -import org.eclipse.jdt.core.IClasspathEntry; -import org.eclipse.jdt.core.IJavaProject; -import org.eclipse.jdt.core.JavaCore; -import org.eclipse.jdt.core.JavaModelException; -import org.eclipse.jdt.launching.IJavaLaunchConfigurationConstants; -import org.eclipse.jdt.launching.JavaRuntime; - -/** - * Provides utility methods to launch the SCA Domain Manager. - * - * @version $Rev: $ $Date: $ - */ -public class DomainManagerLauncherUtil { - - private static final String TUSCANY_DOMAIN_LAUNCH_CONFIGURATION = "SCA Domain Manager"; - private static final String TUSCANY_SCA_DOMAIN_PROJECT = "tuscany-sca-domain"; - - private static final String PING_HEADER = - "GET /ping HTTP/1.0\n" + "Host: localhost\n" - + "Content-Type: text/xml\n" - + "Connection: close\n" - + "Content-Length: "; - private static final String PING_CONTENT = ""; - private static final String PING = - PING_HEADER + PING_CONTENT.getBytes().length + "\n\n" + PING_CONTENT; - - /** - * Returns the SCA domain project. - * - * @return - * @throws CoreException - */ - static IProject domainProject(IProgressMonitor progressMonitor) throws CoreException { - - IProject domainProject = ResourcesPlugin.getWorkspace().getRoot().getProject(TUSCANY_SCA_DOMAIN_PROJECT); - if (progressMonitor.isCanceled()) { - return domainProject; - } - if (!domainProject.exists()) { - progressMonitor.subTask("Creating SCA domain resources"); - - // Create SCA domain project if necessary - domainProject.create(new SubProgressMonitor(progressMonitor, 5)); - domainProject.open(new SubProgressMonitor(progressMonitor, 5)); - - String html = "<html>\n" + - "<head>\n" + - "<meta http-equiv=\"refresh\" content=\"0;url=http://localhost:9990/ui/home\">\n" + - "</head>\n" + - "<body>\n" + - "<a href=\"http://localhost:9990/ui/home\">SCA Domain</a>\n" + - "</body>\n" + - "</html>"; - - IFile file = domainProject.getFile(new Path("domain.html")); - file.create(new ByteArrayInputStream(html.getBytes()), true, new SubProgressMonitor(progressMonitor, 5)); - - IProjectDescription description = domainProject.getDescription(); - String[] prevNatures= description.getNatureIds(); - String[] newNatures= new String[prevNatures.length + 1]; - System.arraycopy(prevNatures, 0, newNatures, 0, prevNatures.length); - newNatures[prevNatures.length]= JavaCore.NATURE_ID; - description.setNatureIds(newNatures); - domainProject.setDescription(description, new SubProgressMonitor(progressMonitor, 5)); - - IJavaProject javaProject = JavaCore.create(domainProject); - javaProject.setOutputLocation(domainProject.getFullPath(), new SubProgressMonitor(progressMonitor, 5)); - - IClasspathEntry classPath = JavaCore.newContainerEntry(new CoreClasspathContainer().getPath()); - IClasspathEntry jrePath = JavaRuntime.getDefaultJREContainerEntry(); - javaProject.setRawClasspath(new IClasspathEntry[] {jrePath, classPath}, new SubProgressMonitor(progressMonitor, 5)); - - } else { - domainProject.open(new SubProgressMonitor(progressMonitor, 5)); - } - - return domainProject; - } - - /** - * Returns true if the SCA domain controller is running. - * - * @return - */ - private static boolean isDomainManagerRunning() { - try { - Socket client = new Socket("localhost", 9990); - OutputStream os = client.getOutputStream(); - os.write(DomainManagerLauncherUtil.PING.getBytes()); - os.flush(); - String response = DomainManagerLauncherUtil.read(client); - if (response.indexOf("<span id=\"ping\">") != -1) { - return true; - } else { - return false; - } - } catch (IOException e) { - return false; - } - } - - /** - * Wait for domain to be running. - * - * @return - */ - private static boolean waitForDomainManager(IProgressMonitor progressMonitor) throws InterruptedException { - progressMonitor.subTask("Contacting SCA domain manager"); - for (int i = 0; i < 40; i++) { - if (progressMonitor.isCanceled()) { - return false; - } - if (isDomainManagerRunning()) { - return true; - } - Thread.sleep(500); - } - return false; - } - - static void launchDomainManager(IProgressMonitor progressMonitor) throws JavaModelException, CoreException, InterruptedException { - - progressMonitor.beginTask("Starting SCA Domain Manager", 100); - - // If the SCA domain controller is not running yet, launch it - if (!isDomainManagerRunning()) { - - progressMonitor.subTask("Starting SCA domain manager"); - if (progressMonitor.isCanceled()) { - return; - } - - // Get the SCA domain project - IProject domainProject = domainProject(progressMonitor); - - // Get the domain manager launch configuration - ILaunchManager launchManager = DebugPlugin.getDefault().getLaunchManager(); - ILaunchConfigurationType launchConfigurationType =launchManager.getLaunchConfigurationType(TUSCANY_LAUNCH_CONFIGURATIONTYPE); - ILaunchConfiguration configuration = null; - for (ILaunchConfiguration c : launchManager.getLaunchConfigurations(launchConfigurationType)) { - if (TUSCANY_DOMAIN_LAUNCH_CONFIGURATION.equals(c.getName())) { - configuration = c; - break; - } - } - - if (configuration == null) { - progressMonitor.worked(10); - if (progressMonitor.isCanceled()) { - return; - } - - // Create a new launch configuration - ILaunchConfigurationWorkingCopy newConfiguration = launchConfigurationType.newInstance(null, TUSCANY_DOMAIN_LAUNCH_CONFIGURATION); - - // Set the project and type to launch - newConfiguration.setAttribute(IJavaLaunchConfigurationConstants.ATTR_PROJECT_NAME, domainProject.getProject().getName()); - newConfiguration.setAttribute(IJavaLaunchConfigurationConstants.ATTR_MAIN_TYPE_NAME, "org.apache.tuscany.sca.node.launcher.DomainManagerLauncher"); - newConfiguration.setAttribute(IJavaLaunchConfigurationConstants.ATTR_WORKING_DIRECTORY, domainProject.getLocation().toString()); - - // Pass the runtime classpath as a system property - newConfiguration.setAttribute(IJavaLaunchConfigurationConstants.ATTR_VM_ARGUMENTS, "\"-DTUSCANY_PATH=" + RuntimeClasspathContainerInitializerExtensionPoint.installedRuntimeClasspath() + "\""); - - // Save the configuration - newConfiguration.doSave(); - - configuration = newConfiguration; - } - - // Launch - configuration.launch(ILaunchManager.RUN_MODE, new SubProgressMonitor(progressMonitor, 20)); - - if (progressMonitor.isCanceled()) { - return; - } - if (!waitForDomainManager(progressMonitor)) { - throw new RuntimeException("SCA Domain Manager could not be started."); - } - } - if (progressMonitor.isCanceled()) { - return; - } - progressMonitor.done(); - - } - - /** - * Read a String from a socket. - * - * @param socket - * @return - * @throws IOException - */ - static String read(Socket socket) throws IOException { - BufferedReader reader = null; - try { - reader = new BufferedReader(new InputStreamReader(socket.getInputStream())); - StringBuffer sb = new StringBuffer(); - String str; - while ((str = reader.readLine()) != null) { - sb.append(str); - } - return sb.toString(); - } finally { - if (reader != null) { - reader.close(); - } - } - } -} diff --git a/tags/java/sca/2.0-M1/tools/eclipse/plugins/core/org/apache/tuscany/sca/plugin/core/launch/NodeLauncherUtil.java b/tags/java/sca/2.0-M1/tools/eclipse/plugins/core/org/apache/tuscany/sca/plugin/core/launch/NodeLauncherUtil.java deleted file mode 100644 index edbe4b3e69..0000000000 --- a/tags/java/sca/2.0-M1/tools/eclipse/plugins/core/org/apache/tuscany/sca/plugin/core/launch/NodeLauncherUtil.java +++ /dev/null @@ -1,244 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you 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.apache.tuscany.sca.plugin.core.launch; - -import static org.apache.tuscany.sca.plugin.core.launch.DomainManagerLauncherUtil.domainProject; -import static org.apache.tuscany.sca.plugin.core.launch.DomainManagerLauncherUtil.launchDomainManager; -import static org.apache.tuscany.sca.plugin.core.launch.TuscanyLaunchConfigurationDelegate.TUSCANY_LAUNCH_CONFIGURATIONTYPE; - -import java.io.IOException; -import java.io.OutputStream; -import java.net.MalformedURLException; -import java.net.Socket; - -import org.apache.tuscany.sca.plugin.core.classpath.RuntimeClasspathContainerInitializerExtensionPoint; -import org.eclipse.core.resources.IFile; -import org.eclipse.core.resources.IResource; -import org.eclipse.core.runtime.CoreException; -import org.eclipse.core.runtime.IPath; -import org.eclipse.core.runtime.IProgressMonitor; -import org.eclipse.core.runtime.NullProgressMonitor; -import org.eclipse.core.runtime.SubProgressMonitor; -import org.eclipse.debug.core.DebugPlugin; -import org.eclipse.debug.core.ILaunchConfiguration; -import org.eclipse.debug.core.ILaunchConfigurationType; -import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy; -import org.eclipse.debug.core.ILaunchManager; -import org.eclipse.jdt.core.IClasspathEntry; -import org.eclipse.jdt.core.IJavaProject; -import org.eclipse.jdt.core.JavaCore; -import org.eclipse.jdt.core.JavaModelException; -import org.eclipse.jdt.launching.IJavaLaunchConfigurationConstants; - -/** - * Provides utility methods to launch SCA nodes. - * - * @version $Rev: $ $Date: $ - */ -public class NodeLauncherUtil { - - private static final String START_HEADER1 = - "GET /quickstart?"; - private static final String START_HEADER2 = - " HTTP/1.0\n" + "Host: localhost\n" - + "Content-Type: text/xml\n" - + "Connection: close\n" - + "Content-Length: "; - private static final String START_CONTENT = ""; - - /** - * Launch an SCA node. - * - * @param mode - * @param file - * @param launchManager - * @param launchConfigurationType - * @throws CoreException - * @throws JavaModelException - */ - static void launchNode(String mode, - IFile file, - IProgressMonitor progressMonitor) throws CoreException, JavaModelException, IOException, InterruptedException { - progressMonitor.subTask("Starting SCA node"); - if (progressMonitor.isCanceled()) { - return; - } - - // First start the SCA domain manager - launchDomainManager(new SubProgressMonitor(progressMonitor, 20)); - - // Get the Java project - IJavaProject javaProject = JavaCore.create(file.getProject()); - - // Get the contribution location and URI - String contributionLocation = contributionLocation(javaProject); - String contributionURI = contributionURI(javaProject); - - // Determine the composite file URI - String compositeURI = compositeURI(javaProject, file); - - // Configure the node - String nodeName = configureNode(contributionURI, contributionLocation, compositeURI, progressMonitor); - - // Get the node launch configuration - ILaunchManager launchManager = DebugPlugin.getDefault().getLaunchManager(); - ILaunchConfigurationType launchConfigurationType =launchManager.getLaunchConfigurationType(TUSCANY_LAUNCH_CONFIGURATIONTYPE); - ILaunchConfiguration configuration = null; - for (ILaunchConfiguration c : launchManager.getLaunchConfigurations(launchConfigurationType)) { - if (file.getFullPath().toString().equals(c.getAttribute("COMPOSITE_PATH", ""))) { - configuration = c; - break; - } - } - - if (configuration == null) { - progressMonitor.worked(10); - if (progressMonitor.isCanceled()) { - return; - } - - // Create a new launch configuration - ILaunchConfigurationWorkingCopy newConfiguration = launchConfigurationType.newInstance(null, - launchManager.generateUniqueLaunchConfigurationNameFrom(file.getName())); - - // Set the project and type to launch - newConfiguration.setAttribute(IJavaLaunchConfigurationConstants.ATTR_PROJECT_NAME, file.getProject().getName()); - newConfiguration.setAttribute(IJavaLaunchConfigurationConstants.ATTR_MAIN_TYPE_NAME, "org.apache.tuscany.sca.node.launcher.NodeLauncher"); - - // Pass the URL of the node install image to the launcher - newConfiguration.setAttribute(IJavaLaunchConfigurationConstants.ATTR_PROGRAM_ARGUMENTS, - "http://localhost:9990/node-config/" + nodeName); - - // Save the composite path in the launch configuration - newConfiguration.setAttribute("COMPOSITE_PATH", file.getFullPath().toString()); - - // Pass the runtime classpath as a system property - newConfiguration.setAttribute(IJavaLaunchConfigurationConstants.ATTR_VM_ARGUMENTS, "\"-DTUSCANY_PATH=" + RuntimeClasspathContainerInitializerExtensionPoint.installedRuntimeClasspath() + "\""); - - // Save the configuration - newConfiguration.doSave(); - - configuration = newConfiguration; - } - - // Launch - configuration.launch(mode, null); - } - - /** - * Returns the location of the SCA contribution representing a Java project. - * @param javaProject - * @return - * @throws MalformedURLException - * @throws JavaModelException - */ - private static String contributionLocation(IJavaProject javaProject) throws MalformedURLException, JavaModelException { - IPath location = javaProject.getOutputLocation(); - IResource resource; - if (location.segmentCount() == 1) { - resource = javaProject.getProject(); - } else { - resource = javaProject.getProject().getWorkspace().getRoot().getFolder(location); - } - location = resource.getLocation(); - String url = location.toFile().toURI().toURL().toString(); - if (url.endsWith("/")) { - url = url.substring(0, url.length() - 1); - } - return url; - } - - /** - * Returns the URI of the SCA contribution representing a Java project. - * @param javaProject - * @return - */ - private static String contributionURI(IJavaProject javaProject) { - return javaProject.getProject().getName(); - } - - /** - * Returns the SCA artifact URI of a composite file inside a Java project. - * - * @param javaProject - * @param file - * @return - * @throws JavaModelException - */ - private static String compositeURI(IJavaProject javaProject, IFile file) throws JavaModelException { - - // Find the Java source container containing the specified file - IClasspathEntry[] classpathEntries = javaProject.getRawClasspath(); - int sourceFolderSegments = 0; - for (IClasspathEntry entry : classpathEntries) { - if (entry.getEntryKind() == IClasspathEntry.CPE_SOURCE) { - sourceFolderSegments = entry.getPath().matchingFirstSegments(file.getFullPath()); - if (sourceFolderSegments > 0) - break; - } - } - - // Determine the composite URI - String compositeURI = file.getFullPath().removeFirstSegments(sourceFolderSegments).toString(); - return compositeURI; - } - - /** - * Send a request to the SCA domain manager to configure an SCA node for - * the specified composite. - * - * @param contributionURI - * @param contributionLocation - * @param compositeURI - * @return - * @throws IOException - */ - private static String configureNode(String contributionURI, String contributionLocation, String compositeURI, - IProgressMonitor progressMonitor) throws IOException, CoreException { - progressMonitor.subTask("Configuring node"); - - // Send the request to configure the node - Socket client = new Socket("localhost", 9990); - OutputStream os = client.getOutputStream(); - String request = START_HEADER1 + - "contribution=" + contributionURI + "&location=" + contributionLocation + "&composite=" + compositeURI + - START_HEADER2 + START_CONTENT.getBytes().length + "\n\n" + START_CONTENT; - os.write(request.getBytes()); - os.flush(); - String response = DomainManagerLauncherUtil.read(client); - - // Refresh the domain project - domainProject(progressMonitor).refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor()); - - int i = response.indexOf("<span id=\"node\">"); - if (i != -1) { - - // Extract the node name - response = response.substring(i + 16); - i = response.indexOf("</span>"); - String nodeName = response.substring(0, i); - return nodeName; - - } else { - throw new RuntimeException("Node could not be configured: " + response); - } - } - -} diff --git a/tags/java/sca/2.0-M1/tools/eclipse/plugins/core/org/apache/tuscany/sca/plugin/core/launch/TuscanyLaunchConfigurationDelegate.java b/tags/java/sca/2.0-M1/tools/eclipse/plugins/core/org/apache/tuscany/sca/plugin/core/launch/TuscanyLaunchConfigurationDelegate.java deleted file mode 100644 index 056deb5b27..0000000000 --- a/tags/java/sca/2.0-M1/tools/eclipse/plugins/core/org/apache/tuscany/sca/plugin/core/launch/TuscanyLaunchConfigurationDelegate.java +++ /dev/null @@ -1,75 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you 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.apache.tuscany.sca.plugin.core.launch; - -import java.io.File; -import java.util.Map; - -import org.eclipse.core.runtime.CoreException; -import org.eclipse.core.runtime.IProgressMonitor; -import org.eclipse.debug.core.ILaunch; -import org.eclipse.debug.core.ILaunchConfiguration; -import org.eclipse.debug.core.model.ILaunchConfigurationDelegate; -import org.eclipse.jdt.launching.AbstractJavaLaunchConfigurationDelegate; -import org.eclipse.jdt.launching.ExecutionArguments; -import org.eclipse.jdt.launching.IVMInstall; -import org.eclipse.jdt.launching.IVMRunner; -import org.eclipse.jdt.launching.VMRunnerConfiguration; - -/** - * Launch configuration delegate for the Tuscany launch configuration. - * - * @version $Rev$ $Date$ - */ -public class TuscanyLaunchConfigurationDelegate extends AbstractJavaLaunchConfigurationDelegate implements - ILaunchConfigurationDelegate { - - public static final String TUSCANY_LAUNCH_CONFIGURATIONTYPE = "org.apache.tuscany.sca.plugin.core.launch.configurationtype"; - - public void launch(ILaunchConfiguration configuration, String mode, ILaunch launch, IProgressMonitor monitor) - throws CoreException { - - // Verify the configuration - String mainTypeName = verifyMainTypeName(configuration); - IVMInstall vm = verifyVMInstall(configuration); - IVMRunner runner = vm.getVMRunner(mode); - - ExecutionArguments execArgs = - new ExecutionArguments(getVMArguments(configuration), getProgramArguments(configuration)); - Map vmAttributesMap = getVMSpecificAttributesMap(configuration); - String[] classpath = getClasspath(configuration); - - File workingDir = verifyWorkingDirectory(configuration); - String workingDirName = null; - if (workingDir != null) - workingDirName = workingDir.getAbsolutePath(); - - // Create a VM runner configuration - VMRunnerConfiguration runConfig = new VMRunnerConfiguration(mainTypeName, classpath); - runConfig.setProgramArguments(execArgs.getProgramArgumentsArray()); - runConfig.setVMArguments(execArgs.getVMArgumentsArray()); - runConfig.setVMSpecificAttributesMap(vmAttributesMap); - runConfig.setWorkingDirectory(workingDirName); - runConfig.setBootClassPath(getBootpath(configuration)); - - // Run!! - runner.run(runConfig, launch, monitor); - } -} diff --git a/tags/java/sca/2.0-M1/tools/eclipse/plugins/core/org/apache/tuscany/sca/plugin/core/launch/TuscanyLaunchConfigurationTabGroup.java b/tags/java/sca/2.0-M1/tools/eclipse/plugins/core/org/apache/tuscany/sca/plugin/core/launch/TuscanyLaunchConfigurationTabGroup.java deleted file mode 100644 index 5f8ea73db4..0000000000 --- a/tags/java/sca/2.0-M1/tools/eclipse/plugins/core/org/apache/tuscany/sca/plugin/core/launch/TuscanyLaunchConfigurationTabGroup.java +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you 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.apache.tuscany.sca.plugin.core.launch; - -import org.eclipse.debug.ui.AbstractLaunchConfigurationTabGroup; -import org.eclipse.debug.ui.CommonTab; -import org.eclipse.debug.ui.EnvironmentTab; -import org.eclipse.debug.ui.ILaunchConfigurationDialog; -import org.eclipse.debug.ui.ILaunchConfigurationTab; -import org.eclipse.debug.ui.ILaunchConfigurationTabGroup; -import org.eclipse.debug.ui.sourcelookup.SourceLookupTab; -import org.eclipse.jdt.debug.ui.launchConfigurations.JavaArgumentsTab; -import org.eclipse.jdt.debug.ui.launchConfigurations.JavaClasspathTab; -import org.eclipse.jdt.debug.ui.launchConfigurations.JavaJRETab; - -/** - * Tab groups from the Tuscany launch configuration. - * - * @version $Rev$ $Date$ - */ -public class TuscanyLaunchConfigurationTabGroup extends AbstractLaunchConfigurationTabGroup implements - ILaunchConfigurationTabGroup { - - public void createTabs(ILaunchConfigurationDialog dialog, String mode) { - ILaunchConfigurationTab[] tabs = - new ILaunchConfigurationTab[] {new JavaArgumentsTab(), new JavaJRETab(), new JavaClasspathTab(), - new SourceLookupTab(), new EnvironmentTab(), new CommonTab()}; - - setTabs(tabs); - } -} diff --git a/tags/java/sca/2.0-M1/tools/eclipse/plugins/core/org/apache/tuscany/sca/plugin/core/launch/TuscanyLaunchDomainManagerAction.java b/tags/java/sca/2.0-M1/tools/eclipse/plugins/core/org/apache/tuscany/sca/plugin/core/launch/TuscanyLaunchDomainManagerAction.java deleted file mode 100644 index f66fa71191..0000000000 --- a/tags/java/sca/2.0-M1/tools/eclipse/plugins/core/org/apache/tuscany/sca/plugin/core/launch/TuscanyLaunchDomainManagerAction.java +++ /dev/null @@ -1,79 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you 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.apache.tuscany.sca.plugin.core.launch; - -import static org.apache.tuscany.sca.plugin.core.launch.DomainManagerLauncherUtil.launchDomainManager; -import static org.apache.tuscany.sca.plugin.core.log.LogUtil.error; - -import java.lang.reflect.InvocationTargetException; - -import org.eclipse.core.runtime.IProgressMonitor; -import org.eclipse.jface.action.IAction; -import org.eclipse.jface.operation.IRunnableWithProgress; -import org.eclipse.jface.viewers.ISelection; -import org.eclipse.ui.IWorkbenchWindow; -import org.eclipse.ui.IWorkbenchWindowActionDelegate; - -/** - * Launch the SCA DomainManager. - * - * @version $Rev: $ $Date: $ - */ -public class TuscanyLaunchDomainManagerAction implements IWorkbenchWindowActionDelegate { - - private IWorkbenchWindow window; - - public TuscanyLaunchDomainManagerAction() { - } - - public void run(IAction action) { - - try { - - // Run with a progress monitor - window.run(true, true, new IRunnableWithProgress() { - - public void run(IProgressMonitor progressMonitor) throws InvocationTargetException, InterruptedException { - try { - - launchDomainManager(progressMonitor); - - } catch (Exception e) { - throw new InvocationTargetException(e); - } finally { - progressMonitor.done(); - } - } - }); - - } catch (Exception e) { - error("Could not launch SCA Domain Manager", e); - } - } - - public void selectionChanged(IAction action, ISelection selection) { - } - - public void dispose() { - } - - public void init(IWorkbenchWindow window) { - this.window = window; - } -} diff --git a/tags/java/sca/2.0-M1/tools/eclipse/plugins/core/org/apache/tuscany/sca/plugin/core/launch/TuscanyLaunchNodeFilter.java b/tags/java/sca/2.0-M1/tools/eclipse/plugins/core/org/apache/tuscany/sca/plugin/core/launch/TuscanyLaunchNodeFilter.java deleted file mode 100644 index 6eba5ffdc2..0000000000 --- a/tags/java/sca/2.0-M1/tools/eclipse/plugins/core/org/apache/tuscany/sca/plugin/core/launch/TuscanyLaunchNodeFilter.java +++ /dev/null @@ -1,29 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you 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.apache.tuscany.sca.plugin.core.launch; - -/** - * TuscanyLaunchNodeFilter - * - * @version $Rev: $ $Date: $ - */ -public class TuscanyLaunchNodeFilter { - -} diff --git a/tags/java/sca/2.0-M1/tools/eclipse/plugins/core/org/apache/tuscany/sca/plugin/core/launch/TuscanyLaunchNodeShortcut.java b/tags/java/sca/2.0-M1/tools/eclipse/plugins/core/org/apache/tuscany/sca/plugin/core/launch/TuscanyLaunchNodeShortcut.java deleted file mode 100644 index 2a4c7206db..0000000000 --- a/tags/java/sca/2.0-M1/tools/eclipse/plugins/core/org/apache/tuscany/sca/plugin/core/launch/TuscanyLaunchNodeShortcut.java +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you 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.apache.tuscany.sca.plugin.core.launch; - -import static org.apache.tuscany.sca.plugin.core.launch.NodeLauncherUtil.launchNode; -import static org.apache.tuscany.sca.plugin.core.log.LogUtil.error; - -import java.lang.reflect.InvocationTargetException; - -import org.eclipse.core.resources.IFile; -import org.eclipse.core.runtime.IProgressMonitor; -import org.eclipse.debug.ui.ILaunchShortcut; -import org.eclipse.jface.operation.IRunnableWithProgress; -import org.eclipse.jface.viewers.ISelection; -import org.eclipse.jface.viewers.IStructuredSelection; -import org.eclipse.ui.IEditorPart; -import org.eclipse.ui.PlatformUI; - -/** - * A launch shortcut for SCA .composite files. - * - * @version $Rev$ $Date$ - */ -public class TuscanyLaunchNodeShortcut implements ILaunchShortcut { - - public void launch(final ISelection selection, final String mode) { - - try { - - // Make sure we have a .composite file selected - if (!(selection instanceof IStructuredSelection)) { - return; - } - Object[] selections = ((IStructuredSelection)selection).toArray(); - if (selections.length == 0) { - return; - } - final IFile file = (IFile)selections[0]; - if (!file.getFileExtension().equals("composite")) { - return; - } - - // Run with a progress monitor - PlatformUI.getWorkbench().getActiveWorkbenchWindow().run(true, true, new IRunnableWithProgress() { - - public void run(IProgressMonitor progressMonitor) throws InvocationTargetException, InterruptedException { - try { - progressMonitor.beginTask("Starting SCA Composite", 100); - - launchNode(mode, file, progressMonitor); - - progressMonitor.done(); - - } catch (Exception e) { - throw new InvocationTargetException(e); - } finally { - progressMonitor.done(); - } - } - }); - - } catch (Exception e) { - error("Could not launch SCA composite", e); - } - } - - public void launch(IEditorPart editor, String mode) { - //TODO later... - } - -} |