<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>
<plugin
   id="org.eclipse.jdt.debug.tests"
   name="%pluginName"
   version="3.0.0"
   provider-name="%providerName"
   class="org.eclipse.jdt.debug.testplugin.JavaTestPlugin">

   <runtime>
      <library name="javadebugtests.jar">
         <export name="*"/>
      </library>
   </runtime>
   <requires>
      <import plugin="org.eclipse.ui.ide" optional="true"/>
      <import plugin="org.eclipse.ui.views" optional="true"/>
      <import plugin="org.eclipse.jface.text" optional="true"/>
      <import plugin="org.eclipse.ui.workbench.texteditor" optional="true"/>
      <import plugin="org.eclipse.ui.editors" optional="true"/>
      <import plugin="org.junit"/>
      <import plugin="org.eclipse.core.resources"/>
      <import plugin="org.eclipse.core.variables"/>
      <import plugin="org.eclipse.ui"/>
      <import plugin="org.eclipse.jdt.core"/>
      <import plugin="org.eclipse.jdt.ui"/>
      <import plugin="org.eclipse.jdt.launching"/>
      <import plugin="org.eclipse.jdt.debug"/>
      <import plugin="org.eclipse.jdt.debug.ui"/>
      <import plugin="org.eclipse.debug.core"/>
      <import plugin="org.eclipse.debug.ui"/>
      <import plugin="org.eclipse.update.core"/>
      <import plugin="org.eclipse.core.runtime.compatibility"/>
      <import plugin="org.eclipse.ui.console"/>
   </requires>


   <extension
         point="org.eclipse.jdt.launching.classpathProviders">
      <classpathProvider
            class="org.eclipse.jdt.debug.testplugin.EmptyClasspathProvider"
            id="org.eclipse.jdt.debug.tests.EmptyClasspathProvider">
      </classpathProvider>
   </extension>
   <extension
         point="org.eclipse.debug.ui.consoleLineTrackers">
      <consoleLineTracker
            class="org.eclipse.jdt.debug.testplugin.ConsoleLineTracker"
            processType="java"
            id="org.eclipse.jdt.debug.tests.ConsoleLineTracker">
      </consoleLineTracker>
   </extension>
   <extension
         point="org.eclipse.jdt.core.classpathVariableInitializer">
      <classpathVariableInitializer
            variable="NULL_VARIABLE"
            class="org.eclipse.jdt.debug.testplugin.NullVariableInitializer">
      </classpathVariableInitializer>
   </extension>
   <extension
         point="org.eclipse.debug.core.launchModes">
      <launchMode
            label="TEST_MODE"
            mode="TEST_MODE">
      </launchMode>
   </extension>
   <extension
         point="org.eclipse.debug.core.launchDelegates">
      <launchDelegate
            type="org.eclipse.jdt.launching.localJavaApplication"
            delegate="org.eclipse.jdt.debug.testplugin.TestModeLaunchDelegate"
            modes="TEST_MODE"
            id="org.eclipse.jdt.debug.tests.testModeLaunchDelegate">
      </launchDelegate>
   </extension>
   <extension
         point="org.eclipse.debug.ui.launchConfigurationTabGroups">
      <launchConfigurationTabGroup
            type="org.eclipse.jdt.launching.localJavaApplication"
            class="org.eclipse.jdt.debug.testplugin.TestJavaApplicationTabGroup"
            id="org.eclipse.jdt.debug.tests.launchConfigurationTabGroup.testJavaApplication">
         <launchMode
               perspective="org.eclipse.jdt.ui.JavaPerspective"
               mode="TEST_MODE">
         </launchMode>
      </launchConfigurationTabGroup>
   </extension>
   <extension
         point="org.eclipse.core.variables.valueVariables">
      <variable
            name="VALUE_VAR_WITH_INITIALIZER"
            initializerClass="org.eclipse.jdt.debug.testplugin.ValueVariableInitializer"
            description="sample variable with initializer">
      </variable>
      <variable
            initialValue="initial-value"
            name="VALUE_VAR_WITH_VALUE"
            description="sample variable with value">
      </variable>
   </extension>
   <extension
         point="org.eclipse.core.variables.dynamicVariables">
      <variable
            name="SAMPLE_DYNAMIC_VAR"
            description="sample dynamic variable"
            resolver="org.eclipse.jdt.debug.testplugin.SampleDynamicVariableResolver">
      </variable>
   </extension>
   <extension
         id="messageConsoleActionSet"
         name="Message Console Test"
         point="org.eclipse.ui.actionSets">
      <actionSet
            label="Message Console Test"
            description="Tests the message (generic) console"
            id="org.eclipse.jdt.debug.tests.messageConsoleActionSet">
            <menu
               label="Run"
               path="additions"
               id="org.eclipse.ui.run">
            <separator
                  name="TestGroup">
            </separator>
         </menu>
         <action
               label="Test Bufferred Output"
               class="org.eclipse.jdt.debug.tests.console.TestBufferredOutputActionDelegate"
               menubarPath="org.eclipse.ui.run/TestGroup"
               id="org.eclipse.jdt.debug.tests.testBufferredOutputAction">
         </action>         
         <action
               label="Test Message Console"
               class="org.eclipse.jdt.debug.tests.console.TestMessageConsoleActionDelegate"
               menubarPath="org.eclipse.ui.run/TestGroup"
               id="org.eclipse.jdt.debug.tests.testMessageConsoleAction">
         </action>
      </actionSet>
   </extension>

</plugin>
