<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>

<plugin>

     <extension
         point="org.eclipse.ui.popupMenus">
      <objectContribution
            adaptable="true"
            objectClass="org.eclipse.ui.IWorkingSet"
            id="org.eclipse.releng.tools.WorkingSetContributions">
         <action
               label="%fixCopyrightsAction.label"
               class="org.eclipse.releng.tools.AdvancedFixCopyrightAction"
               menubarPath="additions"
               enablesFor="+"
               id="org.eclipse.releng.tools.advancedFixCopyrights">
         </action>
      </objectContribution>
      <objectContribution
            adaptable="true"
            objectClass="org.eclipse.core.resources.IResource"
            id="org.eclipse.releng.internal.tools.AdvancedCopyrightContribution">
         <action
               label="%fixCopyrightsAction.label"
               class="org.eclipse.releng.tools.AdvancedFixCopyrightAction"
               menubarPath="additions"
               enablesFor="+"
               id="org.eclipse.releng.tools.advancedFixCopyrights">
         </action>
      </objectContribution>
   </extension>
   
	<!-- ********** Preference Pages ************** -->
	<extension point="org.eclipse.ui.preferencePages">
      <page
            name="%copyrightToolPrefPage.name"
            class="org.eclipse.releng.tools.preferences.CopyrightPreferencePage"
            id="org.eclipse.releng.tools.preferences.CopyrightPreferencePage">
      </page>
      <page
            class="org.eclipse.releng.tools.preferences.PomVersionPreferencePage"
            id="org.eclipse.releng.tools.preferences.PomVersionPreferencePage"
            name="%pomPrefPage.name">
      </page>
   </extension>
	

	<!-- ********** Preference Initializing ************** -->
	<extension point="org.eclipse.core.runtime.preferences">
		<initializer class="org.eclipse.releng.tools.preferences.RelEngPreferenceInitializer"/>
	</extension>
 <extension
       point="org.eclipse.core.runtime.adapters">
    <factory
          adaptableType="org.eclipse.egit.core.internal.GitRepositoryProviderType"
          class="org.eclipse.releng.tools.git.GitCopyrightAdapterFactory">
       <adapter
             type="org.eclipse.releng.tools.IRepositoryProviderCopyrightAdapterFactory">
       </adapter>
    </factory>
 </extension>
<extension id="pomVersionProblem" point="org.eclipse.core.resources.markers" name="%pomVersionMarker.name">
  <super  type="org.eclipse.core.resources.problemmarker"/>
  <super type="org.eclipse.core.resources.textmarker"/>
  <persistent value="true"/>
</extension>
 <extension
       point="org.eclipse.ui.ide.markerSupport">
    <markerTypeCategory
          name="%pomVersionMarkerCategory.name">
       <markerTypeReference
             id="org.eclipse.releng.tools.pomVersionProblem">
       </markerTypeReference>
    </markerTypeCategory>
 </extension>
 <extension
       point="org.eclipse.ui.ide.markerResolution">
    <markerResolutionGenerator
          class="org.eclipse.releng.internal.tools.pomversion.PomVersionResolutionGenerator"
          markerType="org.eclipse.releng.tools.pomVersionProblem">
    </markerResolutionGenerator>
 </extension>
 <extension
       point="org.eclipse.ui.console.consolePageParticipants">
    <consolePageParticipant
          class="org.eclipse.releng.tools.FixPageParticipant"
          id="org.eclipse.releng.tools.fixPageParticipant">
       <enablement>
          <instanceof
                value="org.eclipse.releng.tools.AdvancedFixCopyrightAction$FixConsole">
          </instanceof></enablement>
    </consolePageParticipant>
 </extension>

</plugin>
