<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>
<plugin
   id="org.eclipse.ant.tests.ui"
   name="%pluginName"
   version="3.0.0"
   provider-name="%providerName"
   class="org.eclipse.ant.tests.ui.testplugin.AntUITestPlugin">
   
   <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.apache.ant"/>
	  <import plugin="org.junit"/>   
      <import plugin="org.eclipse.core.resources"/>
      <import plugin="org.eclipse.jdt.core"/>
      <import plugin="org.eclipse.jdt.launching"/>
      <import plugin="org.eclipse.ui"/>
      <import plugin="org.eclipse.ant.core"/>
      <import plugin="org.eclipse.debug.core"/>
      <import plugin="org.eclipse.debug.ui"/>
      <import plugin="org.eclipse.jdt.debug"/>
      <import plugin="org.eclipse.update.core"/>
      <import plugin="org.eclipse.ui.externaltools"/>
      <import plugin="org.eclipse.ant.ui"/>
      <import plugin="org.eclipse.core.runtime"/>
      <import plugin="org.eclipse.test.performance"/>
   </requires>
 
<runtime>
  <library name="anttestsui.jar" >
     <export name = "*"/>
  </library> 
</runtime>

 <extension
     point="org.eclipse.debug.ui.consoleLineTrackers">
	  <consoleLineTracker
	        class="org.eclipse.ant.tests.ui.testplugin.ConsoleLineTracker"
	        processType="org.eclipse.ant.ui.antProcess"
	        id="org.eclipse.ant.tests.ui.testplugin.ConsoleLineTracker">
	  </consoleLineTracker>
  </extension>
  
  <extension
         point="org.eclipse.ant.core.extraClasspathEntries">
      <extraClasspathEntry
            library="lib/antUITestsSupport.jar"
            eclipseRuntime="false">
      </extraClasspathEntry>
   </extension>
   
    <extension point="org.eclipse.ant.core.antTasks">
	    <antTask 
	    	name="coolUITask" 
	    	class="org.eclipse.ant.tests.ui.support.tasks.AntTestTask2"
	    	library="lib/antUITestsSupport.jar"
	    	eclipseRuntime="false">
	    </antTask>
   </extension>

	<extension point="org.eclipse.ant.core.antTypes">
	    <antType 
	    	name="coolUIType" 
	    	class="org.eclipse.ant.tests.ui.support.types.AntTestPath"
	    	library="lib/antUITestsSupport.jar"
	    	eclipseRuntime="false">
	    </antType>
   </extension>
   
   <extension
         point="org.eclipse.ant.core.antProperties">
      <antProperty
            name="property.ui.testing"
            value="true">
      </antProperty>
       <antProperty
            name="property.ui.testing2"
            value="hey"
             eclipseRuntime="false">
      </antProperty>
   </extension>
</plugin>
