<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>
<plugin
   id="org.eclipse.jdt.ui.tests.refactoring"
   name="%Plugin.name"
   version="3.1.0"
   provider-name="%Plugin.providerName"
   class="org.eclipse.jdt.ui.tests.refactoring.infra.RefactoringTestPlugin">

   <runtime>
      <library name="refactoringtests.jar">
         <export name="*"/>
      </library>
   </runtime>
   <requires>
      <import plugin="org.junit"/>
      <import plugin="org.eclipse.core.resources"/>
      <import plugin="org.eclipse.core.filebuffers"/>
      <import plugin="org.eclipse.jface.text"/>
      <import plugin="org.eclipse.ui"/>
      <import plugin="org.eclipse.ui.workbench.texteditor"/>
      <import plugin="org.eclipse.ui.ide"/>
      <import plugin="org.eclipse.jdt.core"/>
      <import plugin="org.eclipse.jdt.ui"/>
      <import plugin="org.eclipse.jdt.ui.tests"/>
      <import plugin="org.eclipse.core.runtime.compatibility" optional="true"/>
	  <import plugin="org.eclipse.ltk.core.refactoring"/>      
	  <import plugin="org.eclipse.ltk.ui.refactoring"/>    
	  <import plugin="org.eclipse.test.performance"/>    
   </requires>
   
    <extension point="org.eclipse.ltk.core.refactoring.renameParticipants">
      <renameParticipant
            class="org.eclipse.jdt.ui.tests.refactoring.TestRenameParticipantShared"
            name="org.eclipse.jdt.ui.tests.refactoring.TestRenameParticipantShared"
            id="org.eclipse.jdt.ui.tests.refactoring.TestRenameParticipantShared"> 
         <enablement>
           <with variable="affectedNatures">
             <iterate operator="or">
               <equals value="org.eclipse.jdt.core.javanature"/>
             </iterate>
           </with>
           <with variable="element">
             <or>
               <instanceof value="org.eclipse.core.resources.IResource"/>
               <instanceof value="org.eclipse.jdt.core.IJavaElement"/>
             </or>
           </with>
         </enablement>
      </renameParticipant>
      <renameParticipant
            class="org.eclipse.jdt.ui.tests.refactoring.TestRenameParticipantSingle"
            name="org.eclipse.jdt.ui.tests.refactoring.TestRenameParticipantSingle"
            id="org.eclipse.jdt.ui.tests.refactoring.TestRenameParticipantSingle">
         <enablement>
           <with variable="affectedNatures">
             <iterate operator="or">
               <equals value="org.eclipse.jdt.core.javanature"/>
             </iterate>
           </with>
           <with variable="element">
             <or>
               <instanceof value="org.eclipse.core.resources.IResource"/>
               <instanceof value="org.eclipse.jdt.core.IJavaElement"/>
             </or>
           </with>
         </enablement>
      </renameParticipant>
   </extension>
   <extension point="org.eclipse.ltk.core.refactoring.moveParticipants">
      <moveParticipant
            class="org.eclipse.jdt.ui.tests.refactoring.TestMoveParticipantShared"
            name="org.eclipse.jdt.ui.tests.refactoring.TestMoveParticipantShared"
            id="org.eclipse.jdt.ui.tests.refactoring.TestMoveParticipantShared">
         <enablement>
           <with variable="affectedNatures">
             <iterate operator="or">
               <equals value="org.eclipse.jdt.core.javanature"/>
             </iterate>
           </with>
           <with variable="element">
             <or>
               <instanceof value="org.eclipse.core.resources.IResource"/>
               <instanceof value="org.eclipse.jdt.core.IJavaElement"/>
             </or>
           </with>
         </enablement>
      </moveParticipant>
       <moveParticipant
            class="org.eclipse.jdt.ui.tests.refactoring.TestMoveParticipantSingle"
            name="org.eclipse.jdt.ui.tests.refactoring.TestMoveParticipantSingle"
            id="org.eclipse.jdt.ui.tests.refactoring.TestMoveParticipantSingle">
         <enablement>
           <with variable="affectedNatures">
             <iterate operator="or">
               <equals value="org.eclipse.jdt.core.javanature"/>
             </iterate>
           </with>
           <with variable="element">
             <or>
               <instanceof value="org.eclipse.core.resources.IResource"/>
               <instanceof value="org.eclipse.jdt.core.IJavaElement"/>
             </or>
           </with>
         </enablement>
      </moveParticipant>
   </extension>
   <extension point="org.eclipse.ltk.core.refactoring.createParticipants">
      <createParticipant
            class="org.eclipse.jdt.ui.tests.refactoring.TestCreateParticipantShared"
            name="org.eclipse.jdt.ui.tests.refactoring.TestCreateParticipantShared"
            id="org.eclipse.jdt.ui.tests.refactoring.TestCreateParticipantShared">
         <enablement>
           <with variable="affectedNatures">
             <iterate operator="or">
               <equals value="org.eclipse.jdt.core.javanature"/>
             </iterate>
           </with>
           <with variable="element">
             <or>
               <instanceof value="org.eclipse.core.resources.IResource"/>
               <instanceof value="org.eclipse.jdt.core.IJavaElement"/>
             </or>
           </with>
         </enablement>
      </createParticipant>
      <createParticipant
            class="org.eclipse.jdt.ui.tests.refactoring.TestCreateParticipantSingle"
            name="org.eclipse.jdt.ui.tests.refactoring.TestCreateParticipantSingle"
            id="org.eclipse.jdt.ui.tests.refactoring.TestCreateParticipantSingle">
         <enablement>
           <with variable="affectedNatures">
             <iterate operator="or">
               <equals value="org.eclipse.jdt.core.javanature"/>
             </iterate>
           </with>
           <with variable="element">
             <or>
               <instanceof value="org.eclipse.core.resources.IResource"/>
               <instanceof value="org.eclipse.jdt.core.IJavaElement"/>
             </or>
           </with>
         </enablement>
      </createParticipant>
   </extension>
   <extension point="org.eclipse.ltk.core.refactoring.deleteParticipants">
      <deleteParticipant
            class="org.eclipse.jdt.ui.tests.refactoring.TestDeleteParticipantShared"
            name="org.eclipse.jdt.ui.tests.refactoring.TestDeleteParticipantShared"
            id="org.eclipse.jdt.ui.tests.refactoring.TestDeleteParticipantShared">
         <enablement>
           <with variable="affectedNatures">
             <iterate operator="or">
               <equals value="org.eclipse.jdt.core.javanature"/>
             </iterate>
           </with>
           <with variable="element">
             <or>
               <instanceof value="org.eclipse.core.resources.IResource"/>
               <instanceof value="org.eclipse.jdt.core.IJavaElement"/>
             </or>
           </with>
         </enablement>
      </deleteParticipant>
       <deleteParticipant
            class="org.eclipse.jdt.ui.tests.refactoring.TestDeleteParticipantSingle"
            name="org.eclipse.jdt.ui.tests.refactoring.TestDeleteParticipantSingle"
            id="org.eclipse.jdt.ui.tests.refactoring.TestDeleteParticipantSingle">
         <enablement>
           <with variable="affectedNatures">
             <iterate operator="or">
               <equals value="org.eclipse.jdt.core.javanature"/>
             </iterate>
           </with>
           <with variable="element">
             <or>
               <instanceof value="org.eclipse.core.resources.IResource"/>
               <instanceof value="org.eclipse.jdt.core.IJavaElement"/>
             </or>
           </with>
         </enablement>
      </deleteParticipant>
   </extension>
   <extension point="org.eclipse.ltk.core.refactoring.copyParticipants">
      <copyParticipant
            class="org.eclipse.jdt.ui.tests.refactoring.TestCopyParticipantShared"
            name="org.eclipse.jdt.ui.tests.refactoring.TestCopyParticipantShared"
            id="org.eclipse.jdt.ui.tests.refactoring.TestCopyParticipantShared"> 
         <enablement>
           <with variable="affectedNatures">
             <iterate operator="or">
               <equals value="org.eclipse.jdt.core.javanature"/>
             </iterate>
           </with>
           <with variable="element">
             <or>
               <instanceof value="org.eclipse.core.resources.IResource"/>
               <instanceof value="org.eclipse.core.internal.resources.mapping.ResourceMapping"/>
               <instanceof value="org.eclipse.jdt.core.IJavaElement"/>
             </or>
           </with>
         </enablement>
      </copyParticipant>
      <copyParticipant
            class="org.eclipse.jdt.ui.tests.refactoring.TestCopyParticipantSingle"
            name="org.eclipse.jdt.ui.tests.refactoring.TestCopyParticipantSingle"
            id="org.eclipse.jdt.ui.tests.refactoring.TestCopyParticipantSingle">
         <enablement>
           <with variable="affectedNatures">
             <iterate operator="or">
               <equals value="org.eclipse.jdt.core.javanature"/>
             </iterate>
           </with>
           <with variable="element">
             <or>
               <instanceof value="org.eclipse.core.resources.IResource"/>
               <instanceof value="org.eclipse.core.internal.resources.mapping.ResourceMapping"/>
               <instanceof value="org.eclipse.jdt.core.IJavaElement"/>
             </or>
           </with>
         </enablement>
      </copyParticipant>
   </extension>
   
</plugin>
