Launch Delegates

Identifier:
org.eclipse.debug.core.launchDelegates

Since:
3.0

Description:
This extension point provides a mechanism for contributing a launch delegate to an existing launch configuration type for one or more launch modes. Since launch modes are extensible, it may be neccessary to contribute additional launch delegates to an existing launch configuration type. Each launch delegate is contributed for a specific launch configuration type. A launch delegate supports one or more launch modes, and specifies a delegate responsible for the implementation of launching.

Configuration Markup:

<!ELEMENT extension (launchDelegate+)>

<!ATTLIST extension

point CDATA #REQUIRED

id    CDATA #IMPLIED

name  CDATA #IMPLIED

>


<!ELEMENT launchDelegate (modeCombination+)?>

<!ATTLIST launchDelegate

id                   CDATA #REQUIRED

name                 CDATA #IMPLIED

delegate             CDATA #REQUIRED

modes                CDATA #IMPLIED

type                 IDREF #IMPLIED

sourcePathComputerId IDREF #IMPLIED

sourceLocatorId      IDREF #IMPLIED

delegateDescription  CDATA #IMPLIED

>


<!ELEMENT modeCombination EMPTY>

<!ATTLIST modeCombination

modes       CDATA #REQUIRED

perspective CDATA #IMPLIED

>

This element specifies a launch mode combination this delegate supports. Each modeCombination element specifies a comma seperated list of modes specifying a supported mixed launch mode. For example, a delegate that supports debugging, profiling and code coverage at the same time would specify a modes element of consisting of 'debug, profile, coverage'. This element can also be used to specify single launch modes that are supported - for example a modes attribute of 'debug'. This element was added in the 3.3 release.



Examples:
The following is an example of a launch delegate extension point:


 <extension point="org.eclipse.debug.core.launchDelegates">
  <launchDelegate
    id="com.example.ExampleProfileDelegate"
    delegate="com.example.ExampleProfileDelegate"
    type="org.eclipse.jdt.launching.localJavaApplication"
    name="Eclipse JDT Java Profile Tooling">
   <modeCombination 
    modes="run, profile"
    perspective="com.example.Perspective">
   </modeCombination>
   <modeCombination modes="debug, profile, coverage"></modeCombination>
  </launchDelegate>
 </extension>

In the example above, the specified launch delegate is contributed to launch Java applications in profile mode. The delegate supports mixed mode launching. The delegate supports profiling when launching in run or debug mode, with code coverage in debug mode only. When the mode combination or run and profile is used, in this example, the perspective com.example.Perspective can also be opened.

API Information:
Value of the attribute delegate must be a fully qualified name of a Java class that implements the interface org.eclipse.debug.core.model.ILaunchConfigurationDelegate.


Copyright (c) 2000, 2013 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 http://www.eclipse.org/legal/epl-v10.html