<?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="org.eclipse.ui.preferencePages">
      <page
            class="org.apache.hdt.ui.preferences.MapReducePreferencePage"
            id="org.apache.hdt.ui.preferences.MapReducePreferencePage"
            name="Hadoop">
      </page>
   </extension>
   <extension
         point="org.eclipse.ui.perspectives">
      <perspective
            class="org.apache.hdt.ui.internal.HadoopPerspectiveFactory"
            icon="icons/hadoop-logo-16x16.png"
            id="org.apache.hdt.ui.perspective"
            name="Hadoop">
      </perspective>
   </extension>
   <extension
         point="org.eclipse.ui.perspectiveExtensions">
      <perspectiveExtension
            targetID="org.apache.hdt.ui.perspective">
         <view
               id="org.eclipse.ui.navigator.ProjectExplorer"
               minimized="false"
               ratio="0.25"
               relationship="left"
               relative="org.eclipse.ui.editorss">
         </view>
         <view
               id="org.apache.hdt.ui.view.servers"
               minimized="false"
               ratio="0.5"
               relationship="bottom"
               relative="org.eclipse.ui.navigator.ProjectExplorer">
         </view>
         <view
               id="org.apache.hdt.ui.ClusterView"
               minimized="false"
               ratio="0.66"
               relationship="bottom"
               relative="org.eclipse.ui.editorss">
         </view>
          <view
                id="org.eclipse.ui.views.PropertySheet"
                minimized="false"
                relationship="stack"
                relative="org.apache.hdt.ui.ClusterView">
         </view>
         <newWizardShortcut
               id="org.apache.hdt.ui.wizard.newProjectWizard"/>
         <newWizardShortcut
               id="org.apache.hdt.ui.wizard.newHdfsServer">
         </newWizardShortcut>
         <newWizardShortcut
               id="org.apache.hdt.ui.wizard.newZooKeeperServer">
         </newWizardShortcut>
         <viewShortcut
               id="org.eclipse.ui.views.ResourceNavigator">
         </viewShortcut>
         <actionSet
               id="org.apache.hdt.ui.actionSet.newServers">
         </actionSet>
      </perspectiveExtension>
   </extension>
   <extension
         point="org.eclipse.ui.decorators">
      <decorator
            adaptable="true"
            class="org.apache.hdt.ui.internal.hdfs.HDFSLightweightLabelDecorator"
            id="org.apache.hdt.ui.decorator.hdfs"
            label="HDFS Resource Decorator"
            lightweight="true"
            location="BOTTOM_RIGHT"
            state="true">
         <enablement>
            <objectClass
                  name="org.eclipse.core.resources.IResource">
            </objectClass>
         </enablement>
      </decorator>
      <decorator
            adaptable="true"
            class="org.apache.hdt.ui.internal.zookeeper.ZooKeeperLightweightLabelDecorator"
            id="org.apache.hdt.ui.decorator.zookeeper"
            label="ZooKeeper Resource Decorator"
            lightweight="true"
            location="BOTTOM_RIGHT"
            state="true">
         <enablement>
            <objectClass
                  name="org.apache.hdt.core.internal.model.ZNode">
            </objectClass>
         </enablement>
      </decorator>
   </extension>
   <extension
         point="org.eclipse.ui.navigator.viewer">
      <viewerContentBinding
            viewerId="org.eclipse.ui.navigator.ProjectExplorer">
         <includes>
            <contentExtension
                  isRoot="false"
                  pattern="org.apache.hdt.ui.navigatorContent.hdfs">
            </contentExtension>
         </includes>
      </viewerContentBinding>
      <viewerContentBinding
            viewerId="org.apache.hdt.ui.view.servers">
         <includes>
            <contentExtension
                  isRoot="true"
                  pattern="org.apache.hdt.ui.navigatorContent.hadoop">
            </contentExtension>
         </includes>
      </viewerContentBinding>
   </extension>
   <extension
         point="org.eclipse.ui.navigator.navigatorContent">
      <navigatorContent
            contentProvider="org.apache.hdt.ui.internal.hdfs.HDFSCommonContentProvider"
            icon="icons/hadoop-logo-16x16.png"
            id="org.apache.hdt.ui.navigatorContent.hdfs"
            labelProvider="org.apache.hdt.ui.internal.hdfs.HDFSLabelProvider"
            name="Navigator HDFS Content Provider"
            priority="higher">
         <triggerPoints>
            <instanceof
                  value="org.eclipse.core.resources.IProject">
            </instanceof>
         </triggerPoints>
      </navigatorContent>
      <navigatorContent
            contentProvider="org.apache.hdt.ui.internal.HadoopCommonContentProvider"
            icon="icons/hadoop-logo-16x16.png"
            id="org.apache.hdt.ui.navigatorContent.hadoop"
            labelProvider="org.apache.hdt.ui.internal.HadoopLabelProvider"
            name="Hadoop Content Provider">
         <triggerPoints>
            <instanceof
                  value="org.apache.hdt.core.internal.model.ZooKeeperServer">
            </instanceof></triggerPoints>
      </navigatorContent>
   </extension>
   <extension
         point="org.eclipse.ui.newWizards">
         <wizard
            category="org.apache.hdt.ui.newWizards.category"
            class="org.apache.hdt.ui.internal.mr.NewMapReduceProjectWizard"
            finalPerspective="org.apache.hdt.ui.perspective"
            icon="icons/hadoop-logo-16x16.png"
            id="org.apache.hdt.ui.wizard.newProjectWizard"
            name="Map/Reduce Project"
            project="true"/>
      <wizard
            category="org.apache.hdt.ui.newWizards.category"
            class="org.apache.hdt.ui.internal.hdfs.NewHDFSWizard"
            finalPerspective="org.apache.hdt.ui.perspective"
            icon="icons/hadoop-hdfs-new.png"
            id="org.apache.hdt.ui.wizard.newHdfsServer"
            name="New HDFS Server">
      </wizard>
      <wizard
            category="org.apache.hdt.ui.newWizards.category"
            class="org.apache.hdt.ui.internal.zookeeper.NewZooKeeperWizard"
            finalPerspective="org.apache.hdt.ui.perspective"
            icon="icons/hadoop-zookeeper-new.png"
            id="org.apache.hdt.ui.wizard.newZooKeeperServer"
            name="New ZooKeeper Server">
      </wizard>
      <wizard
            category="org.apache.hdt.ui.newWizards.category"
            class="org.apache.hdt.ui.internal.mr.NewLocationWizard"
            finalPerspective="org.apache.hdt.ui.perspective"
            icon="icons/location-new-16x16.png"
            id="org.apache.hdt.ui.wizard.newMRCluster"
            name="New MR Cluster">
      </wizard>
      <wizard category="org.apache.hdt.ui.newWizards.category"
            class="org.apache.hdt.ui.internal.mr.NewMapperWizard"
            icon="icons/mapper16.png"
            id="org.apache.hdt.ui.wizard.NewMapperWizard"
            name="Mapper"
            project="false"/>
      <wizard category="org.apache.hdt.ui.newWizards.category"
            class="org.apache.hdt.ui.internal.mr.NewReducerWizard"
            icon="icons/reducer16.png"
            id="org.apache.hdt.ui.wizard.NewReducerWizard"
            name="Reducer"
            project="false"/>
      <wizard
            category="org.apache.hdt.ui.newWizards.category"
            class="org.apache.hdt.ui.internal.mr.NewDriverWizard"
            icon="icons/driver.png"
            id="org.apache.hdt.ui.wizard.NewDriverWizard"
            name="MapReduce Driver"
            project="false"/>
      <wizard
            category="org.apache.hdt.ui.newWizards.category"
            class="org.apache.hdt.ui.internal.mr.NewPartitionerWizard"
            icon="icons/Elephant16x16.gif"
            id="org.apache.hdt.ui.wizard.NewPartitionerWizard"
            name="Partitioner"
            project="false"/>
      <category
            id="org.apache.hdt.ui.newWizards.category"
            name="Hadoop">
      </category>      
   </extension>
   <extension
         point="org.eclipse.ui.popupMenus">
      <objectContribution
            adaptable="true"
            id="org.apache.hdt.ui.team.fileContribution"
            objectClass="org.eclipse.core.resources.IFile">
         <action
               class="org.apache.hdt.ui.internal.hdfs.DownloadResourceAction"
               icon="icons/download.gif"
               id="org.apache.hdt.ui.team.FileDownloadAction"
               label="Download"
               menubarPath="additions">
         </action>
         <action
               class="org.apache.hdt.ui.internal.hdfs.UploadResourceAction"
               icon="icons/upload.gif"
               id="org.apache.hdt.ui.team.FileUploadAction"
               label="Upload"
               menubarPath="additions">
         </action>
         <action
               class="org.apache.hdt.ui.internal.hdfs.DiscardDownloadResourceAction"
               icon="icons/discardDownload.png"
               id="org.apache.hdt.ui.team.fileDiscardDownloadAction"
               label="Discard Download"
               menubarPath="additions">
         </action>
      </objectContribution>
      <objectContribution
            adaptable="true"
            id="org.apache.hdt.ui.team.folderContribution"
            objectClass="org.eclipse.core.resources.IFolder">
         <action
               class="org.apache.hdt.ui.internal.hdfs.DownloadResourceAction"
               icon="icons/download.gif"
               id="org.apache.hdt.ui.team.folderDownloadContribution"
               label="Download"
               menubarPath="additions">
         </action>
         <action
               class="org.apache.hdt.ui.internal.hdfs.UploadResourceAction"
               icon="icons/upload.gif"
               id="org.apache.hdt.ui.team.folderUploadContribution"
               label="Upload"
               menubarPath="additions">
         </action>
         <action
               class="org.apache.hdt.ui.internal.hdfs.DiscardDownloadResourceAction"
               icon="icons/discardDownload.png"
               id="org.apache.hdt.ui.team.folderDiscardDownloadAction"
               label="Discard Download"
               menubarPath="additions">
         </action>
      </objectContribution>
      <objectContribution
            adaptable="false"
            id="org.apache.hdt.ui.team.projectContribution"
            objectClass="org.eclipse.core.resources.IProject">
         <action
               class="org.apache.hdt.ui.internal.hdfs.ReconnectAction"
               icon="icons/ovr/online.png"
               id="org.apache.hdt.ui.team.projectReconnectContribution"
               label="Reconnect"
               menubarPath="additions">
            <class
                  class="org.eclipse.core.resources.IProject">
            </class>
         </action>
         <action
               class="org.apache.hdt.ui.internal.hdfs.DisconnectAction"
               icon="icons/ovr/offline.png"
               id="org.apache.hdt.ui.team.projectDisconnectContribution"
               label="Disconnect"
               menubarPath="additions">
            <class
                  class="org.eclipse.core.resources.IProject">
            </class>
         </action>
      </objectContribution>
      <objectContribution
            adaptable="false"
            id="org.apache.hdt.ui.team.zkServerContribution"
            objectClass="org.apache.hdt.core.internal.model.ZooKeeperServer">
         <action
               class="org.apache.hdt.ui.internal.zookeeper.DisconnectAction"
               icon="icons/ovr/offline.png"
               id="org.apache.hdt.ui.team.zookeeper.DisconnectContribution"
               label="Disconnect"
               menubarPath="additions">
         </action>
         <action
               class="org.apache.hdt.ui.internal.zookeeper.ReconnectAction"
               icon="icons/ovr/online.png"
               id="org.apache.hdt.ui.team.zookeeper.ReconnectContribution"
               label="Reconnect"
               menubarPath="additions">
         </action>
         <action
               class="org.apache.hdt.ui.internal.zookeeper.RefreshAction"
               icon="icons/zookeeper-refresh.gif"
               id="org.apache.hdt.ui.team.zookeeper.server.RefreshContribution"
               label="Refresh"
               menubarPath="additions">
         </action>
         <action
               class="org.apache.hdt.ui.internal.zookeeper.DeleteAction"
               icon="IMG_TOOL_DELETE"
               id="org.apache.hdt.ui.team.zookeeper.node.DeleteContribution"
               label="Delete"
               menubarPath="additions">
         </action>
         <visibility>
            <objectClass
                  name="org.apache.hdt.core.internal.model.ZooKeeperServer">
            </objectClass>
         </visibility>
      </objectContribution>
      <objectContribution
            adaptable="false"
            id="org.apache.hdt.ui.team.zkNodeContribution"
            objectClass="org.apache.hdt.core.internal.model.ZNode">
         <action
               class="org.apache.hdt.ui.internal.zookeeper.RefreshAction"
               icon="icons/zookeeper-refresh.gif"
               id="org.apache.hdt.ui.team.zookeeper.node.RefreshContribution"
               label="Refresh"
               menubarPath="additions">
         </action>
         <action
               class="org.apache.hdt.ui.internal.zookeeper.DeleteAction"
               icon="IMG_TOOL_DELETE"
               id="org.apache.hdt.ui.team.zookeeper.node.DeleteContribution"
               label="Delete"
               menubarPath="additions">
         </action>
         <action
               class="org.apache.hdt.ui.internal.zookeeper.OpenAction"
               enablesFor="1+"
               id="org.apache.hdt.ui.team.zookeeper.node.OpenContribution"
               label="Open"
               menubarPath="additions">
         </action>
         <visibility>
            <and>
               <objectClass
                     name="org.apache.hdt.core.internal.model.ZNode">
               </objectClass>
               <not>
                  <objectClass
                        name="org.apache.hdt.core.internal.model.ZooKeeperServer">
                  </objectClass>
               </not>
            </and>
         </visibility>
      </objectContribution>
   </extension>
   <extension
         point="org.eclipse.ui.views.properties.tabbed.propertyContributor">
      <propertyContributor
            contributorId="org.eclipse.ui.navigator.ProjectExplorer"
            typeMapper="org.apache.hdt.ui.internal.hdfs.PropertyTypeMapper">
         <propertyCategory
               category="general"></propertyCategory>
         <propertyCategory
               category="resource">
         </propertyCategory>
      </propertyContributor>
   </extension>
   <extension
         point="org.eclipse.ui.views.properties.tabbed.propertyTabs">
      <propertyTabs
            contributorId="org.eclipse.ui.navigator.ProjectExplorer">
         <propertyTab
               category="resource"
               id="org.apache.hdt.ui.propertyTab.hdfs"
               image="icons/hadoop-hdfs-16x16.gif"
               label="HDFS">
         </propertyTab>
      </propertyTabs>
   </extension>
   <extension
         point="org.eclipse.ui.views.properties.tabbed.propertySections">
      <propertySections
            contributorId="org.eclipse.ui.navigator.ProjectExplorer">
         <propertySection
               class="org.apache.hdt.ui.internal.hdfs.HDFSPropertySection"
               enablesFor="1"
               id="org.apache.hdt.ui.propertySection.hdfs"
               tab="org.apache.hdt.ui.propertyTab.hdfs">
            <input
                  type="org.apache.hdt.core.internal.hdfs.HDFSFileStore">
            </input>
         </propertySection>
      </propertySections>
   </extension>
   <extension
         point="org.eclipse.core.runtime.adapters">
      <factory
            adaptableType="org.apache.hdt.core.internal.hdfs.HDFSFileStore"
            class="org.apache.hdt.ui.internal.HadoopAdapterFactory">
         <adapter
               type="org.eclipse.ui.views.properties.IPropertySource">
         </adapter>
      </factory>
      <factory
            adaptableType="org.apache.hdt.core.internal.model.ZNode"
            class="org.apache.hdt.ui.internal.HadoopAdapterFactory">
         <adapter
               type="org.eclipse.ui.views.properties.IPropertySource">
         </adapter>
      </factory>
   </extension>
   <extension
         point="org.eclipse.ui.views">
       <category
            id="org.apache.hdt.ui.category"
            name="Hadoop">
      </category>  
      <view
            allowMultiple="false"
            category="org.apache.hdt.ui.category"
            class="org.eclipse.ui.navigator.CommonNavigator"
            icon="icons/hadoop-logo-16x16.png"
            id="org.apache.hdt.ui.view.servers"
            name="ZooKeeper Servers"
            restorable="true">
      </view>
      <view
            allowMultiple="false"
            category="org.apache.hdt.ui.category"
            class="org.apache.hdt.ui.internal.mr.ClusterView"
            icon="icons/hadoop-logo-16x16.png"
            id="org.apache.hdt.ui.ClusterView"
            name="Hadoop Clusters"
            restorable="true">
      </view>
   </extension>
   <extension
         point="org.eclipse.ui.actionSets">
      <actionSet
            id="org.apache.hdt.ui.actionSet.newServers"
            label="Hadoop New Servers Action Set">
         <action
               class="org.apache.hdt.ui.internal.zookeeper.NewZooKeeperServerAction"
               icon="icons/hadoop-zookeeper-new.png"
               id="org.apache.hdt.ui.action.new.zk"
               label="New ZooKeeper Server"
               style="push"
               toolbarPath="new.group"
               tooltip="New ZooKeeper Server">
         </action>
         <action
               class="org.apache.hdt.ui.internal.hdfs.NewHDFSServerAction"
               icon="icons/hadoop-hdfs-new.png"
               id="org.apache.hdt.ui.action.new.hdfs"
               label="New HDFS Server"
               style="push"
               toolbarPath="new.group"
               tooltip="New HDFS Server">
         </action>
      </actionSet>
   </extension>
    <extension
         point="org.eclipse.debug.ui.launchShortcuts">
      <shortcut
            class="org.apache.hdt.ui.internal.launch.HadoopApplicationLaunchShortcut"
            icon="icons/elephantblue16x16.gif"
            id="org.apache.hdt.launch.shortcut"
            label="Run on Hadoop"
            modes="run">
         <contextualLaunch>
            <contextLabel mode="run" label="Run on Hadoop" />
            <enablement>
             <with variable="selection">
               <count value="1"/>
               <iterate>
                <or>
                  <test property="org.eclipse.jdt.launching.hasMain"/>
                  <and>
                     <test property="org.eclipse.jdt.launching.isContainer"/>
                     <test property="org.eclipse.jdt.launching.hasProjectNature" args="org.eclipse.jdt.core.javanature"/>
                     <test property="org.eclipse.jdt.launching.hasProjectNature" args="org.apache.hdt.mrature"/>                     
                  </and>
                </or>
               </iterate>
               </with>
           </enablement>
         </contextualLaunch>
      </shortcut>
      </extension>
</plugin>
