<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>
<plugin
   id="net.sourceforge.pmd.eclipse"
   name="%plugin.name"
   version="2.0.5.v3"
   provider-name="%plugin.provider"
   class="net.sourceforge.pmd.eclipse.PMDPlugin">

   <runtime>
      <library name="pmd-eclipse.jar">
         <export name="*"/>
      </library>
      <library name="lib/log4j-1.2.8.jar"/>
      <library name="lib/commons-logging.jar"/>
   </runtime>
   <requires>
      <import plugin="org.eclipse.ui.ide"/>
      <import plugin="org.eclipse.ui.views"/>
      <import plugin="org.eclipse.jface.text"/>
      <import plugin="org.eclipse.ui.workbench.texteditor"/>
      <import plugin="org.eclipse.ui.editors"/>
      <import plugin="org.eclipse.core.resources"/>
      <import plugin="org.eclipse.ui"/>
      <import plugin="org.eclipse.swt"/>
      <import plugin="org.eclipse.jdt.core"/>
      <import plugin="net.sourceforge.pmd.core"/>
      <import plugin="org.eclipse.core.runtime"/>
   </requires>


   <extension
         id="pmdPreferencePages"
         name="PMDPreferencePages"
         point="org.eclipse.ui.preferencePages">
      <page
            name="%preferences.pmd"
            class="net.sourceforge.pmd.eclipse.preferences.GeneralPreferencesPage"
            id="net.sourceforge.pmd.eclipse.preferences.generalPreferencesPage">
      </page>
      <page
            name="%preferences.rulesets"
            category="net.sourceforge.pmd.eclipse.preferences.generalPreferencesPage"
            class="net.sourceforge.pmd.eclipse.preferences.PMDPreferencePage"
            id="net.sourceforge.pmd.eclipse.preferences.pmdPreferencePage">
      </page>
      <page
            name="%preferences.cpd"
            category="net.sourceforge.pmd.eclipse.preferences.generalPreferencesPage"
            class="net.sourceforge.pmd.eclipse.preferences.CPDPreferencePage"
            id="net.sourceforge.pmd.eclipse.preferences.cpdPreferencePage">
      </page>
   </extension>
   <extension
         id="pmdMarker"
         name="%marker.pmd"
         point="org.eclipse.core.resources.markers">
      <super
            type="org.eclipse.core.resources.problemmarker">
      </super>
      <persistent
            value="true">
      </persistent>
      <attribute
            name="rulename">
      </attribute>
   </extension>
   <extension
         point="org.eclipse.ui.ide.markerResolution">
      <markerResolutionGenerator
            markerType="net.sourceforge.pmd.eclipse.pmdMarker"
            class="net.sourceforge.pmd.eclipse.PMDResolutionGenerator">
      </markerResolutionGenerator>
   </extension>
   <extension
         id="pmdTaskMarker"
         name="%marker.task"
         point="org.eclipse.core.resources.markers">
      <super
            type="net.sourceforge.pmd.eclipse.pmdMarker">
      </super>
      <super
            type="org.eclipse.core.resources.taskmarker">
      </super>
      <persistent
            value="true">
      </persistent>
   </extension>
   <extension
         id="pmdBuilder"
         name="%builder.name"
         point="org.eclipse.core.resources.builders">
      <builder>
         <run
               class="net.sourceforge.pmd.eclipse.builder.PMDBuilder">
         </run>
      </builder>
   </extension>
   <extension
         id="pmdPropertyPage"
         name="PMD Property Page"
         point="org.eclipse.ui.propertyPages">
      <page
            objectClass="org.eclipse.core.resources.IProject"
            adaptable="true"
            name="%properties.pmd"
            nameFilter="*"
            class="net.sourceforge.pmd.eclipse.properties.PMDPropertyPage"
            id="net.sourceforge.pmd.eclipse.properties.pmdPropertyPage">
      </page>
   </extension>
   <extension
         id="pmdNature"
         name="%nature.name"
         point="org.eclipse.core.resources.natures">
      <runtime>
         <run
               class="net.sourceforge.pmd.eclipse.builder.PMDNature">
         </run>
      </runtime>
      <builder
            id="net.sourceforge.pmd.eclipse.pmdBuilder">
      </builder>
      <requires-nature
            id="org.eclipse.jdt.core.javanature">
      </requires-nature>
   </extension>
   <extension
         id="pmdPopupMenus"
         name="PMD Popup Menus"
         point="org.eclipse.ui.popupMenus">
      <objectContribution
            objectClass="org.eclipse.core.resources.IProject"
            adaptable="true"
            nameFilter="*"
            id="net.sourceforge.pmd.eclipse.pmdProjectContribution">
         <menu
               label="%menu.pmd"
               path="additions"
               id="pmd.menu">
            <separator
                  name="group">
            </separator>
         </menu>
         <action
               label="%action.checkpmd"
               icon="icons/pmd-icon-16.gif"
               class="net.sourceforge.pmd.eclipse.actions.PMDCheckAction"
               menubarPath="pmd.menu/group"
               enablesFor="+"
               id="net.sourceforge.pmd.eclipse.pmdCheckProjectAction">
         </action>
         <action
               label="%action.clearpmd"
               icon="icons/pmd-icon-16.gif"
               class="net.sourceforge.pmd.eclipse.actions.PMDRemoveMarkersAction"
               menubarPath="pmd.menu/group"
               enablesFor="+"
               id="net.sourceforge.pmd.eclipse.pmdRemoveMarkersAction">
         </action>
         <action
               label="%action.checkcpd"
               icon="icons/pmd-icon-16.gif"
               class="net.sourceforge.pmd.eclipse.actions.CPDCheckProjectAction"
               menubarPath="pmd.menu/group"
               enablesFor="+"
               id="net.sourceforge.pmd.eclipse.cpdCheckProjectAction">
         </action>
         <action
               label="%action.clearreviews"
               icon="icons/pmd-icon-16.gif"
               class="net.sourceforge.pmd.eclipse.actions.ClearReviewsAction"
               menubarPath="pmd.menu/group"
               enablesFor="+"
               id="net.sourceforge.pmd.eclipse.pmdClearReviewsAction">
         </action>
      </objectContribution>
      <objectContribution
            objectClass="org.eclipse.core.resources.IFolder"
            adaptable="true"
            nameFilter="*"
            id="net.sourceforge.pmd.eclipse.pmdFolderContribution">
         <menu
               label="%menu.pmd"
               path="additions"
               id="pmd.menu">
            <separator
                  name="group">
            </separator>
         </menu>
         <action
               label="%action.checkpmd"
               icon="icons/pmd-icon-16.gif"
               class="net.sourceforge.pmd.eclipse.actions.PMDCheckAction"
               menubarPath="pmd.menu/group"
               enablesFor="+"
               id="net.sourceforge.pmd.eclipse.pmdCheckProjectAction">
         </action>
         <action
               label="%action.clearpmd"
               icon="icons/pmd-icon-16.gif"
               class="net.sourceforge.pmd.eclipse.actions.PMDRemoveMarkersAction"
               menubarPath="pmd.menu/group"
               enablesFor="+"
               id="net.sourceforge.pmd.eclipse.pmdRemoveMarkersAction">
         </action>
         <action
               label="%action.clearreviews"
               icon="icons/pmd-icon-16.gif"
               class="net.sourceforge.pmd.eclipse.actions.ClearReviewsAction"
               menubarPath="pmd.menu/group"
               enablesFor="+"
               id="net.sourceforge.pmd.eclipse.pmdClearReviewsAction">
         </action>
      </objectContribution>
      <objectContribution
            objectClass="org.eclipse.core.resources.IFile"
            adaptable="true"
            nameFilter="*.java"
            id="net.sourceforge.pmd.eclipse.pmdFileContribution">
         <menu
               label="%menu.pmd"
               path="additions"
               id="pmd.menu">
            <separator
                  name="group">
            </separator>
         </menu>
         <action
               label="%action.checkpmd"
               icon="icons/pmd-icon-16.gif"
               class="net.sourceforge.pmd.eclipse.actions.PMDCheckAction"
               menubarPath="pmd.menu/group"
               enablesFor="+"
               id="net.sourceforge.pmd.eclipse.pmdCheckFileAction">
         </action>
         <action
               label="%action.clearpmd"
               icon="icons/pmd-icon-16.gif"
               class="net.sourceforge.pmd.eclipse.actions.PMDRemoveMarkersAction"
               menubarPath="pmd.menu/group"
               enablesFor="+"
               id="net.sourceforge.pmd.eclipse.pmdRemoveMarkersAction">
         </action>
         <action
               label="%action.ast"
               icon="icons/pmd-icon-16.gif"
               class="net.sourceforge.pmd.eclipse.actions.PMDGenerateASTAction"
               menubarPath="pmd.menu/group"
               enablesFor="+"
               id="net.sourceforge.pmd.eclipse.pmdGenerateAstAction">
         </action>
         <action
               label="%action.clearreviews"
               icon="icons/pmd-icon-16.gif"
               class="net.sourceforge.pmd.eclipse.actions.ClearReviewsAction"
               menubarPath="pmd.menu/group"
               enablesFor="+"
               id="net.sourceforge.pmd.eclipse.pmdClearReviewsAction">
         </action>
      </objectContribution>
      <viewerContribution
            targetID="org.eclipse.ui.views.TaskList"
            id="net.sourceforge.pmd.eclipse.pmdTaskListContribution">
         <action
               label="%action.clearall"
               icon="icons/pmd-icon-16.gif"
               class="net.sourceforge.pmd.eclipse.actions.PMDRemoveMarkersAction"
               menubarPath="additions"
               id="net.sourceforge.pmd.eclipse.pmdRemoveAllMarkersAction">
         </action>
      </viewerContribution>
      <viewerContribution
            targetID="net.sourceforge.pmd.eclipse.views.ViolationView"
            id="net.sourceforge.pmd.eclipse.pmdVioaltionViewContribution">
         <action
               label="%action.clearall"
               icon="icons/pmd-icon-16.gif"
               class="net.sourceforge.pmd.eclipse.actions.PMDRemoveMarkersAction"
               menubarPath="additions"
               id="net.sourceforge.pmd.eclipse.pmdRemoveAllMarkersAction">
         </action>
      </viewerContribution>
   </extension>
   <extension
         point="org.eclipse.help.toc">
      <toc
            file="toc.xml"
            primary="false">
      </toc>
   </extension>
   <extension
         id="pmdViews"
         point="org.eclipse.ui.views">
      <category
            name="%view.category"
            id="net.sourceforge.pmd.eclipse.views">
      </category>
      <view
            name="%view.violation"
            icon="icons/pmd-icon-16.gif"
            category="net.sourceforge.pmd.eclipse.views"
            class="net.sourceforge.pmd.eclipse.views.ViolationView"
            id="net.sourceforge.pmd.eclipse.views.ViolationView">
      </view>
   </extension>
   <extension
         id="pmdPreferences"
         point="org.eclipse.core.runtime.preferences">
      <initializer class="net.sourceforge.pmd.eclipse.PluginPreferenceInitializer"/>
   </extension>

</plugin>
