Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSarika Sinha2018-07-27 12:43:09 -0400
committerSarika Sinha2018-07-27 21:02:54 -0400
commit9b9fed3a10f223c926e0140f869d12bea390cb14 (patch)
tree1513f0397c54f2c463923415bd19b03228df4f94 /org.eclipse.debug.core
parent90dd90f919f313ff9c30595fc2ecf84ecb689156 (diff)
downloadeclipse.platform.debug-9b9fed3a10f223c926e0140f869d12bea390cb14.tar.gz
eclipse.platform.debug-9b9fed3a10f223c926e0140f869d12bea390cb14.tar.xz
eclipse.platform.debug-9b9fed3a10f223c926e0140f869d12bea390cb14.zip
Bug 312397 - Run Configuration Command Line to ClipboardI20180729-0800I20180728-1500I20180728-0805
Diffstat (limited to 'org.eclipse.debug.core')
-rw-r--r--org.eclipse.debug.core/.settings/.api_filters8
-rw-r--r--org.eclipse.debug.core/META-INF/MANIFEST.MF2
-rw-r--r--org.eclipse.debug.core/core/org/eclipse/debug/core/ILaunchConfigurationType.java12
-rw-r--r--org.eclipse.debug.core/core/org/eclipse/debug/core/model/ILaunchConfigurationDelegate.java32
-rw-r--r--org.eclipse.debug.core/core/org/eclipse/debug/internal/core/IConfigurationElementConstants.java12
-rw-r--r--org.eclipse.debug.core/core/org/eclipse/debug/internal/core/LaunchConfigurationType.java11
-rw-r--r--org.eclipse.debug.core/pom.xml4
-rw-r--r--org.eclipse.debug.core/schema/launchConfigurationTypes.exsd9
8 files changed, 83 insertions, 7 deletions
diff --git a/org.eclipse.debug.core/.settings/.api_filters b/org.eclipse.debug.core/.settings/.api_filters
index 985cbd845..2b5e5c4df 100644
--- a/org.eclipse.debug.core/.settings/.api_filters
+++ b/org.eclipse.debug.core/.settings/.api_filters
@@ -8,4 +8,12 @@
</message_arguments>
</filter>
</resource>
+ <resource path="core/org/eclipse/debug/core/model/ILaunchConfigurationDelegate.java" type="org.eclipse.debug.core.model.ILaunchConfigurationDelegate">
+ <filter comment="adding default method" id="404000815">
+ <message_arguments>
+ <message_argument value="org.eclipse.debug.core.model.ILaunchConfigurationDelegate"/>
+ <message_argument value="showCommandLine(ILaunchConfiguration, String, ILaunch, IProgressMonitor)"/>
+ </message_arguments>
+ </filter>
+ </resource>
</component>
diff --git a/org.eclipse.debug.core/META-INF/MANIFEST.MF b/org.eclipse.debug.core/META-INF/MANIFEST.MF
index acec883cd..930cbe6ec 100644
--- a/org.eclipse.debug.core/META-INF/MANIFEST.MF
+++ b/org.eclipse.debug.core/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: org.eclipse.debug.core; singleton:=true
-Bundle-Version: 3.12.100.qualifier
+Bundle-Version: 3.13.0.qualifier
Bundle-ClassPath: .
Bundle-Activator: org.eclipse.debug.core.DebugPlugin
Bundle-Vendor: %providerName
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/core/ILaunchConfigurationType.java b/org.eclipse.debug.core/core/org/eclipse/debug/core/ILaunchConfigurationType.java
index 2f1ad9301..40af1c412 100644
--- a/org.eclipse.debug.core/core/org/eclipse/debug/core/ILaunchConfigurationType.java
+++ b/org.eclipse.debug.core/core/org/eclipse/debug/core/ILaunchConfigurationType.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2000, 2017 IBM Corporation and others.
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -354,4 +354,14 @@ public interface ILaunchConfigurationType extends IAdaptable {
* @since 3.12
*/
boolean supportsPrototypes();
+
+ /**
+ * Returns whether this type of launch configuration supports showing
+ * command line.
+ *
+ * @return whether this kind of launch configuration supports showing
+ * command line
+ * @since 3.13
+ */
+ boolean supportsCommandLine();
}
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/core/model/ILaunchConfigurationDelegate.java b/org.eclipse.debug.core/core/org/eclipse/debug/core/model/ILaunchConfigurationDelegate.java
index cdf215c22..9766fb977 100644
--- a/org.eclipse.debug.core/core/org/eclipse/debug/core/model/ILaunchConfigurationDelegate.java
+++ b/org.eclipse.debug.core/core/org/eclipse/debug/core/model/ILaunchConfigurationDelegate.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2000, 2009 IBM Corporation and others.
+ * Copyright (c) 2000, 2018 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -51,4 +51,34 @@ public interface ILaunchConfigurationDelegate {
*/
void launch(ILaunchConfiguration configuration, String mode, ILaunch launch, IProgressMonitor monitor) throws CoreException;
+ /**
+ * Gets the command line to launch the given configuration in the specified
+ * mode, contributing debug targets and/or processes to the given launch
+ * object. The launch object has already been registered with the launch
+ * manager.
+ *
+ * @param configuration the configuration to launch
+ * @param mode the mode in which to launch, one of the mode constants
+ * defined by <code>ILaunchManager</code> - <code>RUN_MODE</code>
+ * or <code>DEBUG_MODE</code>.
+ * @param monitor progress monitor, or <code>null</code> progress monitor,
+ * or <code>null</code>. A cancelable progress monitor is
+ * provided by the Job framework. It should be noted that the
+ * setCanceled(boolean) method should never be called on the
+ * provided monitor or the monitor passed to any delegates from
+ * this method; due to a limitation in the progress monitor
+ * framework using the setCanceled method can cause entire
+ * workspace batch jobs to be canceled, as the canceled flag is
+ * propagated up the top-level parent monitor. The provided
+ * monitor is not guaranteed to have been started.
+ * @param launch the launch object to contribute processes and debug targets
+ * to
+ * @return the command line string
+ * @exception CoreException if launching fails
+ * @since 3.13
+ */
+ public default String showCommandLine(ILaunchConfiguration configuration, String mode, ILaunch launch, IProgressMonitor monitor) throws CoreException {
+ return ""; //$NON-NLS-1$
+ }
+
}
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/IConfigurationElementConstants.java b/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/IConfigurationElementConstants.java
index 3118f260a..55570ef15 100644
--- a/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/IConfigurationElementConstants.java
+++ b/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/IConfigurationElementConstants.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2006, 2017 IBM Corporation and others.
+ * Copyright (c) 2006, 2018 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -352,4 +352,14 @@ public interface IConfigurationElementConstants {
* @since 3.12
*/
String ALLOW_PROTOTYPES = "allowPrototypes"; //$NON-NLS-1$
+
+ /**
+ * The allowCommandLine node name for a configuration element
+ * <p>
+ * Equal to the word: <code>allowCommandLine</code>
+ * </p>
+ *
+ * @since 3.13
+ */
+ String ALLOW_COMMANDLINE = "allowCommandLine"; //$NON-NLS-1$
}
diff --git a/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/LaunchConfigurationType.java b/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/LaunchConfigurationType.java
index df188153e..7cad14e86 100644
--- a/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/LaunchConfigurationType.java
+++ b/org.eclipse.debug.core/core/org/eclipse/debug/internal/core/LaunchConfigurationType.java
@@ -480,5 +480,16 @@ public class LaunchConfigurationType extends PlatformObject implements ILaunchCo
}
return false;
}
+
+ @Override
+ public boolean supportsCommandLine() {
+ String allowPrototypesString = fElement.getAttribute(IConfigurationElementConstants.ALLOW_COMMANDLINE);
+ if (allowPrototypesString != null) {
+ if (allowPrototypesString.equalsIgnoreCase("true")) { //$NON-NLS-1$
+ return true;
+ }
+ }
+ return false;
+ }
}
diff --git a/org.eclipse.debug.core/pom.xml b/org.eclipse.debug.core/pom.xml
index 1861f98a1..52228e425 100644
--- a/org.eclipse.debug.core/pom.xml
+++ b/org.eclipse.debug.core/pom.xml
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
- Copyright (c) 2012, 2017 Eclipse Foundation and others.
+ Copyright (c) 2012, 2018 Eclipse Foundation and others.
All rights reserved. This program and the accompanying materials
are made available under the terms of the Eclipse Distribution License v1.0
which accompanies this distribution, and is available at
@@ -18,6 +18,6 @@
</parent>
<groupId>org.eclipse.debug</groupId>
<artifactId>org.eclipse.debug.core</artifactId>
- <version>3.12.100-SNAPSHOT</version>
+ <version>3.13.0-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project>
diff --git a/org.eclipse.debug.core/schema/launchConfigurationTypes.exsd b/org.eclipse.debug.core/schema/launchConfigurationTypes.exsd
index aed236e9b..048c27640 100644
--- a/org.eclipse.debug.core/schema/launchConfigurationTypes.exsd
+++ b/org.eclipse.debug.core/schema/launchConfigurationTypes.exsd
@@ -163,6 +163,13 @@ Since 3.3, the &lt;code&gt;sourceLocatorId&lt;/code&gt; can also be specified vi
</documentation>
</annotation>
</attribute>
+ <attribute name="allowCommandLine" type="boolean">
+ <annotation>
+ <documentation>
+ specifies whether this launch configuration type allows command line or not. Defaults to &lt;code&gt;false&lt;/code&gt; if not specified. This attribute was added in 4.7 release.
+ </documentation>
+ </annotation>
+ </attribute>
</complexType>
</element>
@@ -248,7 +255,7 @@ The value of the attribute &lt;b&gt;migrationDelegate&lt;/b&gt; must be a fully
<meta.section type="copyright"/>
</appinfo>
<documentation>
- Copyright (c) 2000, 2005 IBM Corporation and others.&lt;br&gt;
+ Copyright (c) 2000, 2018 IBM Corporation and others.&lt;br&gt;
All rights reserved. This program and the accompanying materials are made
available under the terms of the Eclipse Public License v1.0 which
accompanies this distribution, and is available at

Back to the top