<?xml version='1.0' encoding='UTF-8'?>
<!-- Schema file written by PDE -->
<schema targetNamespace="org.eclipse.debug.core">
<annotation>
      <appInfo>
         <meta.schema plugin="org.eclipse.debug.core" id="launchConfigurationTypes" name="Launch Configuration Types"/>
      </appInfo>
      <documentation>
         This extension point provides a configurable mechanism for launching applications.
Each launch configuration type has a name, supports one or more modes (run and/or debug), and specifies a delegate
responsible for the implementation of launching an application.

As of 3.2 the types can also define a migration delegate that can be used to set resource mappings between projects and the launch configurations that launch them.
      </documentation>
   </annotation>

   <element name="extension">
      <complexType>
         <sequence>
            <element ref="launchConfigurationType" minOccurs="0" maxOccurs="unbounded"/>
         </sequence>
         <attribute name="point" type="string" use="required">
            <annotation>
               <documentation>
                  a fully qualified identifier of the target extension point
               </documentation>
            </annotation>
         </attribute>
         <attribute name="id" type="string">
            <annotation>
               <documentation>
                  an optional identifier of the extension instance
               </documentation>
            </annotation>
         </attribute>
         <attribute name="name" type="string">
            <annotation>
               <documentation>
                  an optional name of the extension instance
               </documentation>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <element name="launchConfigurationType">
      <annotation>
         <appInfo>
            <meta.element labelAttribute="name"/>
         </appInfo>
      </annotation>
      <complexType>
         <sequence>
            <element ref="fileExtension" minOccurs="1" maxOccurs="unbounded"/>
         </sequence>
         <attribute name="id" type="string" use="required">
            <annotation>
               <documentation>
                  specifies a unique identifier for this launch configuration type.
               </documentation>
            </annotation>
         </attribute>
         <attribute name="delegate" type="string" use="required">
            <annotation>
               <documentation>
                  specifies the fully qualified name of the Java class that implements &lt;code&gt;ILaunchConfigurationDelegate&lt;/code&gt;.
Launch configuration instances of this type will delegate to instances of this class to perform launching.
               </documentation>
               <appInfo>
                  <meta.attribute kind="java" basedOn="org.eclipse.debug.core.model.ILaunchConfigurationDelegate"/>
               </appInfo>
            </annotation>
         </attribute>
         <attribute name="modes" type="string" use="required">
            <annotation>
               <documentation>
                  specifies a comma-separated list of the modes this type of lauch configuration supports - &quot;run&quot; and/or &quot;debug&quot;.
               </documentation>
            </annotation>
         </attribute>
         <attribute name="name" type="string" use="required">
            <annotation>
               <documentation>
                  specifies a human-readable name for this type of launch configuration.
               </documentation>
               <appInfo>
                  <meta.attribute translatable="true"/>
               </appInfo>
            </annotation>
         </attribute>
         <attribute name="public" type="boolean">
            <annotation>
               <documentation>
                  specifies whether this launch configuration type is accessible by users.  Defaults to &lt;code&gt;true&lt;/code&gt; if not specified.
               </documentation>
            </annotation>
         </attribute>
         <attribute name="category" type="string">
            <annotation>
               <documentation>
                  an optional attribute that specifies this launch configuration type&apos;s category. The default value is unspecified (&lt;code&gt;null&lt;/code&gt;). Categories are client defined. This attribute was added in the 2.1 release.
               </documentation>
            </annotation>
         </attribute>
         <attribute name="sourcePathComputerId" type="string">
            <annotation>
               <documentation>
                  The unique identifier of a sourcePathComputer extension that is used to compute a default source lookup path for launch configurations of this type. This atttribute was added in the 3.0 release.
               </documentation>
            </annotation>
         </attribute>
         <attribute name="sourceLocatorId" type="string">
            <annotation>
               <documentation>
                  The unique identifier of a sourceLocator extension that is used to create the source locator for sessions launched using launch configurations of this type. This atttribute was added in the 3.0 release.
               </documentation>
            </annotation>
         </attribute>
         <attribute name="migrationDelegate" type="string">
            <annotation>
               <documentation>
                  Optional delegate used to migrate launch configurations of this type to be compatible with current tooling, since 3.2
               </documentation>
               <appInfo>
                  <meta.attribute kind="java" basedOn="org.eclipse.debug.core.ILaunchConfigurationMigrationDelegate"/>
               </appInfo>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <element name="fileExtension">
      <complexType>
         <attribute name="extension" type="string" use="required">
            <annotation>
               <documentation>
                  specifies a file extension that this launch configuration type can be used for.
               </documentation>
            </annotation>
         </attribute>
         <attribute name="default" type="boolean">
            <annotation>
               <documentation>
                  specifies whether this launch configuration type should be the default launch configuration type for the specified file extension.  Defaults to &lt;code&gt;false&lt;/code&gt; if not specified.
               </documentation>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <annotation>
      <appInfo>
         <meta.section type="examples"/>
      </appInfo>
      <documentation>
         The following is an example of a launch configuration type extension point:

&lt;p&gt;
&lt;pre&gt;
 &lt;extension point=&quot;org.eclipse.debug.core.launchConfigurationTypes&quot;&gt;
  &lt;launchConfigurationType
   id=&quot;com.example.ExampleIdentifier&quot;
   delegate=&quot;com.example.ExampleLaunchConfigurationDelegate&quot;
   modes=&quot;run,debug&quot;
   name=&quot;Example Application&quot;&gt;
   &lt;fileExtension extension=&quot;txt&quot; default=&quot;true&quot;/&gt;
   &lt;fileExtension extension=&quot;gif&quot; default=&quot;false&quot;/&gt;
  &lt;/launchConfigurationType&gt;
 &lt;/extension&gt;
&lt;/pre&gt;
&lt;/p&gt;

In the example above, the specified type of launch configuration supports both run and debug modes. 
The launch configuration is applicable to .txt and .gif files, and is the default launch configuration for .txt files.
      </documentation>
   </annotation>

   <annotation>
      <appInfo>
         <meta.section type="apiInfo"/>
      </appInfo>
      <documentation>
         Value of the attribute &lt;b&gt;delegate&lt;/b&gt; must be a fully qualified name of a Java class that implements the interface &lt;b&gt;org.eclipse.debug.core.model.ILaunchConfigurationDelegate&lt;/b&gt;.
      </documentation>
   </annotation>

   <annotation>
      <appInfo>
         <meta.section type="copyright"/>
      </appInfo>
      <documentation>
         Copyright (c) 2000, 2005 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 
&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;
      </documentation>
   </annotation>

</schema>
