<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?>
<!--
   Licensed to the Apache Software Foundation (ASF) under one
   or more contributor license agreements.  See the NOTICE file
   distributed with this work for additional information
   regarding copyright ownership.  The ASF licenses this file
   to you under the Apache License, Version 2.0 (the
   "License"); you may not use this file except in compliance
   with the License.  You may obtain a copy of the License at

     http://www.apache.org/licenses/LICENSE-2.0

   Unless required by applicable law or agreed to in writing,
   software distributed under the License is distributed on an
   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
   KIND, either express or implied.  See the License for the
   specific language governing permissions and limitations
   under the License.    
-->
<plugin>
    <extension-point id="moduleDescriptorExtension" name="org.apache.ivyde.module.descriptor.extension" schema="schema/moduleDescriptorExtension.exsd"/>
    <extension-point id="editorPage" name="org.apache.ivyde.editorPage" schema="schema/editorPage.exsd"/>

	<extension point="org.eclipse.ui.console.consoleFactories">
	  <consoleFactory 
	     label="Ivy Console"
	     class="org.apache.ivyde.internal.eclipse.ui.console.IvyConsoleFactory"
	     icon="icons/logo16x16.gif">
	  </consoleFactory>
	</extension>
 <extension
       point="org.eclipse.ui.console.consolePageParticipants">
    <consolePageParticipant
          class="org.apache.ivyde.internal.eclipse.ui.console.IvyConsolePageParticipant"
          id="org.apache.ivyde.eclipse.ivyConsolePageParticipant">
       <enablement>
          <instanceof
                value="org.apache.ivyde.internal.eclipse.ui.console.IvyConsole">
          </instanceof></enablement>
    </consolePageParticipant>
 </extension>

   <extension
         point="org.eclipse.jdt.ui.classpathContainerPage">
      <classpathContainerPage
      		id="org.apache.ivyde.eclipse.cpcontainer.IVYDE_CONTAINER"
      		name="IvyDE Managed Dependencies"
            class="org.apache.ivyde.internal.eclipse.cpcontainer.IvydeContainerPage"
            >
      </classpathContainerPage>
   </extension>
   
    <extension
          id="org.apache.ivyde.eclipse.cpcontainer.Container"
          name="IvyDE Classpath Container"
          point="org.eclipse.jdt.core.classpathContainerInitializer">
      <classpathContainerInitializer
            class="org.apache.ivyde.internal.eclipse.cpcontainer.IvyClasspathInitializer"
            id="org.apache.ivyde.eclipse.cpcontainer.IVYDE_CONTAINER">
      </classpathContainerInitializer>
   </extension>


   <extension
         point="org.eclipse.ui.editors">
      <editor
            class="org.apache.ivyde.internal.eclipse.ui.editors.IvyModuleDescriptorEditor"
            contributorClass="org.apache.ivyde.internal.eclipse.ui.editors.IvyModuleDescriptorEditorContributor"
            filenames="ivy.xml"
            icon="icons/logo16x16.gif"
            id="org.apache.ivyde.editors.IvyEditor"
            name="Ivy Editor">
         <contentTypeBinding
               contentTypeId="org.apache.ivyde.eclipse.contentType.ivyfile">
         </contentTypeBinding>
      </editor>
      <editor
            class="org.apache.ivyde.internal.eclipse.ui.editors.IvySettingsEditor"
            contributorClass="org.apache.ivyde.internal.eclipse.ui.editors.IvyModuleDescriptorEditorContributor"
            filenames="ivysettings.xml"
            icon="icons/logo16x16.gif"
            id="org.apache.ivyde.editors.IvySettingsEditor"
            name="Ivy Settings Editor">
         <contentTypeBinding
               contentTypeId="org.apache.ivyde.eclipse.contentType.ivysettings">
         </contentTypeBinding>
      </editor>
   </extension>
   <extension
         point="org.eclipse.ui.newWizards">
		<category 
		   id="org.apache.ivyde.eclipse.ui.new"
		   name="IvyDE">
		</category>
      <wizard
            class="org.apache.ivyde.internal.eclipse.ui.wizards.IvyNewWizard"
            icon="icons/logo16x16.gif"
            id="org.apache.ivyde.eclipse.ui.wizards.IvyNewWizard"
            category="org.apache.ivyde.eclipse.ui.new"
            name="Ivy file">
      </wizard>
   </extension>
   <extension
         point="org.eclipse.ui.preferencePages">
      <page
            name="Ivy"
            class="org.apache.ivyde.internal.eclipse.ui.preferences.IvyPreferencePage"
            id="org.apache.ivyde.eclipse.ui.preferences.IvyPreferencePage">
      </page>
      <page
            category="org.apache.ivyde.eclipse.ui.preferences.IvyPreferencePage"
            class="org.apache.ivyde.internal.eclipse.ui.preferences.SettingsSetupPreferencePage"
            id="org.apache.ivyde.eclipse.ui.preferences.SettingsSetupPreferencePage"
            name="Settings">
      </page>
      <page
            category="org.apache.ivyde.eclipse.ui.preferences.IvyPreferencePage"
            class="org.apache.ivyde.internal.eclipse.ui.preferences.ClasspathSetupPreferencePage"
            id="org.apache.ivyde.eclipse.ui.preferences.ClasspathSetupPreferencePage"
            name="Classpath Container">
      </page>
      <page
            name="Workspace Resolver"
            class="org.apache.ivyde.internal.eclipse.ui.preferences.WorkspaceResolverPreferencePage"
            id="org.apache.ivyde.eclipse.ui.preferences.WorkspaceResolverPreferencePage"
            category="org.apache.ivyde.eclipse.ui.preferences.IvyPreferencePage">
      </page>
      <page
            category="org.apache.ivyde.eclipse.ui.preferences.IvyPreferencePage"
            class="org.apache.ivyde.internal.eclipse.ui.preferences.MappingSetupPreferencePage"
            id="org.apache.ivyde.eclipse.ui.preferences.MappingSetupPreferencePage"
            name="Source/Javadoc Mapping">
      </page>
      <page
            category="org.apache.ivyde.eclipse.ui.preferences.IvyPreferencePage"
            class="org.apache.ivyde.internal.eclipse.ui.preferences.XMLEditorPreferencesPage"
            id="org.apache.ivyde.eclipse.ui.preferences.XMLEditorPreferencesPage"
            name="XML Editor">
      </page>
      <page
            category="org.apache.ivyde.eclipse.ui.preferences.IvyPreferencePage"
            class="org.apache.ivyde.internal.eclipse.ui.preferences.AdvancedSetupPreferencePage"
            id="org.apache.ivyde.eclipse.ui.preferences.AdvancedSetupPreferencePage"
            name="Advanced">
      </page>
   </extension>
   <extension
         point="org.eclipse.core.runtime.preferences">
      <initializer
            class="org.apache.ivyde.internal.eclipse.ui.preferences.PreferenceInitializer">
      </initializer>
   </extension>
   
   
	<extension 
	   point="org.eclipse.ui.views">
		<category 
		   id="org.apache.ivyde.eclipse.ui.views"
		   name="IvyDE">
		</category>
		<view
	 	   id="org.apache.ivyde.eclipse.ui.views.ReportView"
		   name="Ivy Report"
		   icon="icons/logo16x16.gif"
		   category="org.apache.ivyde.eclipse.ui.views"
		   class="org.apache.ivyde.internal.eclipse.ui.views.ReportView">
		</view>
  <view
        category="org.apache.ivyde.eclipse.ui.views"
        class="org.apache.ivyde.internal.eclipse.ui.views.ReverseDependencyExplorerView"
        icon="icons/logo16x16.gif"
        id="org.apache.ivyde.eclipse.ui.views.ReverseDependencyExplorer"
        name="Reverse Dependency Explorer"
        restorable="true">
  </view>
	</extension>

   
   <extension
         point="org.eclipse.help.toc">
      <toc
            file="doc/toc.xml"
            primary="true">
      </toc>
   </extension>
   <extension
         point="org.eclipse.jdt.core.classpathVariableInitializer">
      <classpathVariableInitializer
            class="org.apache.ivyde.internal.eclipse.IvyDEClasspathVariableInitializer"
            variable="IVY_HOME">
      </classpathVariableInitializer>
   </extension>
   <extension
         id="marker"
         name="IvyDE Problem"
         point="org.eclipse.core.resources.markers">
      <persistent
            value="false">
      </persistent>
      <super
            type="org.eclipse.core.resources.problemmarker">
      </super>
   </extension>
   
    <extension
    	id="org.apache.ivyide.eclipse.ivyschema"
    	name="Ivy Schema" 
    	point="org.eclipse.wst.xml.core.catalogContributions">
        <catalogContribution id="ivySchema">
		<uri 
		    name="http://ant.apache.org/ivy/schemas/ivy.xsd" 
			uri="platform:/plugin/org.apache.ivyde.eclipse/xsd/ivy.xsd"/>
    </catalogContribution>
   </extension>
   <extension
         point="org.eclipse.jdt.launching.runtimeClasspathEntryResolvers">
      <runtimeClasspathEntryResolver
            class="org.apache.ivyde.internal.eclipse.IvyDERuntimeClasspathEntryResolver"
            container="org.apache.ivyde.eclipse.cpcontainer.IVYDE_CONTAINER"
            id="org.apache.ivyde.eclipse.runtimeClasspathEntryResolver"
            variable="org.apache.ivyde.eclipse.cpcontainer.IVYDE_CONTAINER">
      </runtimeClasspathEntryResolver>
   </extension>
   <extension
         point="org.eclipse.ui.commands">
      <category
            id="org.apache.ivyde.commands"
            name="IvyDE commands">
      </category>
      <command
            categoryId="org.apache.ivyde.commands"
            id="org.apache.ivyde.commands.resolve"
            name="Resolve">
      </command>
      <command
            categoryId="org.apache.ivyde.commands"
            id="org.apache.ivyde.commands.refresh"
            name="Refresh">
      </command>
      <command
            categoryId="org.apache.ivyde.commands"
            id="org.apache.ivyde.commands.reloadsettings"
            name="Reload settings">
      </command>
      <command
            categoryId="org.apache.ivyde.commands"
            id="org.apache.ivyde.commands.resolveall"
            name="Resolve All">
      </command>
      <command
            categoryId="org.apache.ivyde.commands"
            id="org.apache.ivyde.commands.openivyfile"
            name="Open Ivy file">
      </command>
      <command
            categoryId="org.apache.ivyde.commands"
            id="org.apache.ivyde.commands.revdepexplorer"
            name="Show in Reverse Dependency Explorer">
      </command>
      <command
            categoryId="org.apache.ivyde.commands"
            id="org.apache.ivyde.commands.createcontainer"
            name="Add Ivy Library...">
      </command>
      <command
            categoryId="org.apache.ivyde.commands"
            id="org.apache.ivyde.commands.addivynature"
            name="Add Ivy dependency management">
      </command>
      <command
            categoryId="org.apache.ivyde.commands"
            id="org.apache.ivyde.commands.removeivynature"
            name="Remove Ivy dependency management...">
      </command>
   </extension>
   <extension
         point="org.eclipse.ui.handlers">
      <handler
            class="org.apache.ivyde.internal.eclipse.handlers.ResolveHandler"
            commandId="org.apache.ivyde.commands.resolve">
      </handler>
      <handler
            class="org.apache.ivyde.internal.eclipse.handlers.RefreshHandler"
            commandId="org.apache.ivyde.commands.refresh">
      </handler>
      <handler
            class="org.apache.ivyde.internal.eclipse.handlers.ReloadSettingsHandler"
            commandId="org.apache.ivyde.commands.reloadsettings">
      </handler>
      <handler
            class="org.apache.ivyde.internal.eclipse.handlers.ResolveAllHandler"
            commandId="org.apache.ivyde.commands.resolveall">
      </handler>
      <handler
            class="org.apache.ivyde.internal.eclipse.handlers.OpenIvyFileHandler"
            commandId="org.apache.ivyde.commands.openivyfile">
      </handler>
      <handler
            class="org.apache.ivyde.internal.eclipse.handlers.ViewReverseDependenciesHandler"
            commandId="org.apache.ivyde.commands.revdepexplorer">
      </handler>
      <handler
            class="org.apache.ivyde.internal.eclipse.handlers.CreateContainerHandler"
            commandId="org.apache.ivyde.commands.createcontainer">
      </handler>
      <handler
            class="org.apache.ivyde.internal.eclipse.handlers.AddIvyNatureHandler"
            commandId="org.apache.ivyde.commands.addivynature">
      </handler>
      <handler
            class="org.apache.ivyde.internal.eclipse.handlers.RemoveIvyNatureHandler"
            commandId="org.apache.ivyde.commands.removeivynature">
      </handler>
   </extension>
   <extension
         point="org.eclipse.core.expressions.definitions">
      <definition
            id="org.apache.ivyde.definition.ivyproject">
         <iterate
               ifEmpty="false"
               operator="or">
            <adapt
                  type="org.eclipse.core.resources.IProject">
               <test
                     property="org.eclipse.core.resources.projectNature"
                     value="org.apache.ivyde.eclipse.ivynature">
               </test>
            </adapt>
         </iterate>
      </definition>
      <definition
            id="org.apache.ivyde.definition.nonivyproject">
         <iterate>
            <adapt
                  type="org.eclipse.core.resources.IProject">
               <not>
                  <test
                        property="org.eclipse.core.resources.projectNature"
                        value="org.apache.ivyde.eclipse.ivynature">
                  </test>
               </not>
            </adapt>
         </iterate>
      </definition>
      <definition
            id="org.apache.ivyde.definition.ivycontainer">
         <iterate
               ifEmpty="false"
               operator="or">
            <instanceof
                  value="org.eclipse.jdt.internal.ui.packageview.ClassPathContainer">
            </instanceof>
         </iterate>
      </definition>
      <definition
            id="org.apache.ivyde.definition.workingset">
         <iterate
               ifEmpty="false"
               operator="or">
            <adapt
                  type="org.eclipse.ui.IWorkingSet">
            </adapt>
         </iterate>
      </definition>
      <definition
            id="org.apache.ivyde.definition.ivyfile">
         <and>
            <iterate
                  ifEmpty="false"
                  operator="or">
               <adapt
                     type="org.eclipse.core.resources.IFile">
                  <test
                        property="org.eclipse.core.resources.name"
                        value="*.xml">
                  </test>
               </adapt>
            </iterate>
            <count
                  value="1">
            </count>
         </and>
      </definition>
   </extension>
   <extension
         point="org.eclipse.ui.menus">
      <menuContribution
            locationURI="popup:org.eclipse.ui.popup.any?after=additions">
         <command
               commandId="org.apache.ivyde.commands.createcontainer"
               label="Add Ivy Library..."
               style="push">
            <visibleWhen
                  checkEnabled="false">
               <reference
                     definitionId="org.apache.ivyde.definition.ivyfile">
               </reference>
            </visibleWhen>
         </command>
         <dynamic
               class="org.apache.ivyde.internal.eclipse.ui.menu.IvyMenuContributionItem"
               id="org.apache.ivyde.eclipse.ivymenu">
            <visibleWhen
                  checkEnabled="false">
               <or>
                  <reference
                        definitionId="org.apache.ivyde.definition.ivyproject">
                  </reference>
                  <reference
                        definitionId="org.apache.ivyde.definition.ivycontainer">
                  </reference>
                  <reference
                        definitionId="org.apache.ivyde.definition.workingset">
                  </reference>
               </or>
            </visibleWhen>
         </dynamic>
      </menuContribution>
      <menuContribution
            locationURI="toolbar:org.eclipse.ui.main.toolbar?after=additions">
         <toolbar
               id="org.apache.ivyde.eclipse.toolbar">
            <command
                  commandId="org.apache.ivyde.commands.resolveall"
                  icon="icons/resolve-all.gif"
                  label="Resolve all"
                  style="push">
            </command>
         </toolbar>
      </menuContribution>
      <menuContribution
            locationURI="popup:org.eclipse.ui.projectConfigure?after=additions">
         <command
               commandId="org.apache.ivyde.commands.addivynature"
               label="Add Ivy dependency management"
               style="push">
            <visibleWhen
                  checkEnabled="false">
               <reference
                     definitionId="org.apache.ivyde.definition.nonivyproject">
               </reference>
            </visibleWhen>
         </command>
      </menuContribution>
   </extension>
   <extension
         id="ivynature"
         name="Ivy nature"
         point="org.eclipse.core.resources.natures">
      <runtime>
         <run
               class="org.apache.ivyde.internal.eclipse.IvyNature">
         </run>
      </runtime>
   </extension>
   <extension
         point="org.eclipse.ui.propertyPages">
      <page
            adaptable="true"
            class="org.apache.ivyde.internal.eclipse.ui.preferences.IvyDEProjectPreferences"
            id="org.apache.ivyde.eclipse.projectpreferences"
            name="Ivy"
            objectClass="org.eclipse.core.resources.IProject">
         <filter
               name="nature"
               value="org.apache.ivyde.eclipse.ivynature">
         </filter>
      </page>
   </extension>
   <extension
         point="org.eclipse.ui.decorators">
      <decorator
            adaptable="false"
            class="org.apache.ivyde.internal.eclipse.ui.IvyDEClasspathContainerDecorator"
            id="org.apache.ivyde.eclipse.decorator"
            label="IvyDE decorator"
            lightweight="false"
            objectClass="org.eclipse.jdt.internal.ui.packageview.ClassPathContainer"
            state="true">
      </decorator>
   </extension>
   <extension
         point="org.eclipse.core.contenttype.contentTypes">
      <content-type
            base-type="org.eclipse.core.runtime.xml"
            file-extensions="xml"
            file-names="ivy.xml"
            id="org.apache.ivyde.eclipse.contentType.ivyfile"
            name="Ivy File"
            priority="normal">
         <describer
               class="org.eclipse.core.runtime.content.XMLRootElementContentDescriber2">
               <parameter name="element" value="ivy-module" />
         </describer>
      </content-type>
      <content-type
            base-type="org.eclipse.core.runtime.xml"
            file-extensions="xml"
            id="org.apache.ivyde.eclipse.contentType.ivysettings"
            name="Ivy Settings"
            priority="normal">
         <describer
               class="org.eclipse.core.runtime.content.XMLRootElementContentDescriber2">
               <parameter name="element" value="ivysettings" />
         </describer>
      </content-type>
   </extension>

</plugin>
