<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.2"?>
<plugin>
   <extension point="org.eclipse.wst.common.project.facet.ui.wizardPages">
    <wizard-pages action="jst.ear#5.0#install">
      <page class="org.eclipse.jst.jee.ui.project.facet.EarJavaEEFacetInstallPage"/>
    </wizard-pages>
  </extension>

   
    <extension point="org.eclipse.core.runtime.adapters">
        <factory
             class="org.eclipse.jst.jee.ui.internal.deployables.EnterpriseDeployableArtifactAdapterFactory"
             adaptableType="org.eclipse.core.resources.IProject">
            <adapter type= "org.eclipse.debug.ui.actions.ILaunchable"/>
        </factory>
        <factory
             class="org.eclipse.jst.jee.ui.internal.deployables.EnterpriseDeployableArtifactAdapterFactory"
             adaptableType="org.eclipse.core.resources.IFile">
            <adapter type= "org.eclipse.debug.ui.actions.ILaunchable"/>
       </factory>

        <factory
             class="org.eclipse.jst.jee.ui.internal.deployables.EnterpriseDeployableArtifactAdapterFactory"
             adaptableType="org.eclipse.jst.javaee.application.Application">
             <adapter type= "org.eclipse.debug.ui.actions.ILaunchable"/>
        </factory>
        <factory
              adaptableType="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider"
              class="org.eclipse.jst.jee.ui.internal.deployables.EnterpriseDeployableArtifactAdapterFactory">
           <adapter
                 type="org.eclipse.debug.ui.actions.ILaunchable">
           </adapter>
        </factory>

   </extension>
   
    <extension point="org.eclipse.core.runtime.adapters">
         <factory
             class="org.eclipse.jst.jee.ui.internal.deployables.WebDeployableArtifactAdapterFactory"
             adaptableType="org.eclipse.core.resources.IProject">
             <adapter type= "org.eclipse.debug.ui.actions.ILaunchable"/>
        </factory>
        <factory
             class="org.eclipse.jst.jee.ui.internal.deployables.WebDeployableArtifactAdapterFactory"
             adaptableType="org.eclipse.jdt.core.ICompilationUnit">
            <adapter type= "org.eclipse.debug.ui.actions.ILaunchable"/>
        </factory>
        <factory
             class="org.eclipse.jst.jee.ui.internal.deployables.WebDeployableArtifactAdapterFactory"
             adaptableType="org.eclipse.core.resources.IFile">
            <adapter type= "org.eclipse.debug.ui.actions.ILaunchable"/>
       </factory>
       <factory
             class="org.eclipse.jst.jee.ui.internal.deployables.WebDeployableArtifactAdapterFactory"
             adaptableType="org.eclipse.jst.javaee.web.Servlet">
             <adapter type= "org.eclipse.debug.ui.actions.ILaunchable"/>
       </factory>       
       <factory
             class="org.eclipse.jst.jee.ui.internal.deployables.WebDeployableArtifactAdapterFactory"
             adaptableType="org.eclipse.jst.javaee.web.WebApp">
             <adapter type= "org.eclipse.debug.ui.actions.ILaunchable"/>
       </factory> 

   </extension>  

    <extension point="org.eclipse.core.runtime.adapters">
         <factory
             class="org.eclipse.jst.jee.ui.internal.deployables.EJBDeployableArtifactAdapterFactory"
             adaptableType="org.eclipse.core.resources.IProject">
             <adapter type= "org.eclipse.debug.ui.actions.ILaunchable"/> 
        </factory>
        <factory
             class="org.eclipse.jst.jee.ui.internal.deployables.EJBDeployableArtifactAdapterFactory"
             adaptableType="org.eclipse.jdt.core.ICompilationUnit">
             <adapter type= "org.eclipse.debug.ui.actions.ILaunchable"/> 
        </factory>
        <factory
             class="org.eclipse.jst.jee.ui.internal.deployables.EJBDeployableArtifactAdapterFactory"
             adaptableType="org.eclipse.core.resources.IFile">
            <adapter type= "org.eclipse.debug.ui.actions.ILaunchable"/> 
       </factory>

	   	<factory
	    	class="org.eclipse.jst.jee.ui.internal.deployables.EJBDeployableArtifactAdapterFactory"
	     	adaptableType="org.eclipse.jst.javaee.ejb.EJBJar">
	     	<adapter type= "org.eclipse.debug.ui.actions.ILaunchable"/> 
		</factory>
		
		<factory
			class="org.eclipse.jst.jee.ui.internal.deployables.EJBDeployableArtifactAdapterFactory"
	     	adaptableType="org.eclipse.jst.javaee.ejb.SessionBean">
	     	<adapter type= "org.eclipse.debug.ui.actions.ILaunchable"/> 
	   	</factory>
	   		
		<factory
			class="org.eclipse.jst.jee.ui.internal.deployables.EJBDeployableArtifactAdapterFactory"
	     	adaptableType="org.eclipse.jst.javaee.ejb.MessageDrivenBean">
	     	<adapter type= "org.eclipse.debug.ui.actions.ILaunchable"/> 
	   	</factory>	
	   	
	   	<factory
			class="org.eclipse.jst.jee.ui.internal.deployables.EJBDeployableArtifactAdapterFactory"
	     	adaptableType="org.eclipse.jst.javaee.ejb.EntityBean">
	     	<adapter type= "org.eclipse.debug.ui.actions.ILaunchable"/> 
	   	</factory>       
   </extension> 
   
   <extension
         point="org.eclipse.wst.server.core.moduleArtifactAdapters">
  
    <moduleArtifactAdapter
           id="org.eclipse.jst.jee.server.ear1"
           class="org.eclipse.jst.jee.ui.internal.deployables.EnterpriseDeployableArtifactAdapterFactory">
         <enablement>
           <with variable="selection">
             <adapt type="org.eclipse.jst.javaee.application.Application"/>
           </with>
         </enablement>
      </moduleArtifactAdapter>
 
     <moduleArtifactAdapter
            id="org.eclipse.jst.jee.server.ear2"
            class="org.eclipse.jst.jee.ui.internal.deployables.EnterpriseDeployableArtifactAdapterFactory">
         <enablement>
           <with variable="selection">
             <adapt type="org.eclipse.core.resources.IProject">
             	<test forcePluginActivation="true"
							property="org.eclipse.wst.common.project.facet.core.projectFacet"
							value="jst.ear:5.0" />
			 </adapt>
             
           </with>
         </enablement>
      </moduleArtifactAdapter>
      
      <moduleArtifactAdapter
            id="org.eclipse.jst.jee.server.ear3"
            class="org.eclipse.jst.jee.ui.internal.deployables.EnterpriseDeployableArtifactAdapterFactory">
         <enablement>
           <with variable="selection">
             <adapt type="org.eclipse.core.resources.IFile">
             	<test forcePluginActivation="true"
							property="org.eclipse.wst.common.project.facet.core.projectFacet"
							value="jst.ear:5.0" />
			 </adapt>
           </with>
         </enablement>
      </moduleArtifactAdapter>
      <moduleArtifactAdapter
            class="org.eclipse.jst.jee.ui.internal.deployables.EnterpriseDeployableArtifactAdapterFactory"
            id="org.eclipse.jst.jee.server.ear4">
         <enablement>
            <with
                  variable="selection">
               <adapt
                     type="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
               </adapt>
            </with>
         </enablement>
      </moduleArtifactAdapter>
     </extension>


 <!-- ==================================================================== -->
<!-- Extension point: org.eclipse.etools.server.core.moduleObjectAdapters -->
<!-- Purpose: Define adapters for Web resources                           -->
<!-- ==================================================================== -->
      <extension point="org.eclipse.wst.server.core.moduleArtifactAdapters">  
    
       <moduleArtifactAdapter
            id="org.eclipse.jst.jee.web.server.webresource"
            class="org.eclipse.jst.jee.ui.internal.deployables.WebDeployableArtifactAdapterFactory">     
         <enablement>
           <with variable="selection">
             <adapt type="org.eclipse.jst.javaee.web.WebApp"/>
           </with>
         </enablement>
      </moduleArtifactAdapter> 
       
      <moduleArtifactAdapter
            id="org.eclipse.jst.jee.web.server.webresource2"
             class="org.eclipse.jst.jee.ui.internal.deployables.WebDeployableArtifactAdapterFactory">      
         <enablement>
           <with variable="selection">
             <adapt type="org.eclipse.jst.javaee.web.Servlet"/>
           </with>
         </enablement>
       </moduleArtifactAdapter>
      
       <moduleArtifactAdapter
            id="org.eclipse.jst.jee.web.server.webresource3"
            class="org.eclipse.jst.jee.ui.internal.deployables.WebDeployableArtifactAdapterFactory">     
         <enablement>
           <with variable="selection">
             <adapt type="org.eclipse.core.resources.IProject">
             <test forcePluginActivation="true"
							property="org.eclipse.wst.common.project.facet.core.projectFacet"
							value="jst.web:2.5" />
			 </adapt>
           </with>
         </enablement>
       </moduleArtifactAdapter>     
       
        <moduleArtifactAdapter
            id="org.eclipse.jst.jee.web.server.webresource4"
            class="org.eclipse.jst.jee.ui.internal.deployables.WebDeployableArtifactAdapterFactory">
         <enablement>
           <with variable="selection">
             <adapt type="org.eclipse.core.resources.IFile">
             <test forcePluginActivation="true"
							property="org.eclipse.wst.common.project.facet.core.projectFacet"
							value="jst.web:2.5" />
			 </adapt>
           </with>
         </enablement>
       </moduleArtifactAdapter>

      <moduleArtifactAdapter
            id="org.eclipse.jst.jee.web.server.webresource5"
            class="org.eclipse.jst.jee.ui.internal.deployables.WebDeployableArtifactAdapterFactory">
          
         <enablement>
           <with variable="selection">
             <adapt type="org.eclipse.jdt.core.ICompilationUnit">
             <test forcePluginActivation="true"
							property="org.eclipse.jst.j2ee.common.projectFacet"
							value="jst.web:2.5" />             
             </adapt>
           </with>
         </enablement>
       </moduleArtifactAdapter>
   </extension>
   
   <!-- ==================================================================== -->
<!-- Purpose: Define adapters for EJB resources                           -->
<!-- Extension point: org.eclipse.wst.server.core.moduleArtifactAdapters  -->
<!-- ==================================================================== -->
   <extension
         point="org.eclipse.wst.server.core.moduleArtifactAdapters">
       
      <moduleArtifactAdapter
            id="org.eclipse.jst.j2ee.server.ejb"
            class="org.eclipse.jst.jee.ui.internal.deployables.EJBDeployableArtifactAdapterFactory">
         <enablement>
           <with variable="selection">
             <adapt type="org.eclipse.jst.javaee.ejb.EJBJar"/>
           </with>
         </enablement>
      </moduleArtifactAdapter>
      <moduleArtifactAdapter
            id="org.eclipse.jst.j2ee.server.ejb2"
            class="org.eclipse.jst.jee.ui.internal.deployables.EJBDeployableArtifactAdapterFactory">
         <enablement>
           <with variable="selection">
             <adapt type="org.eclipse.jst.javaee.ejb.SessionBean"/>
           </with>
         </enablement>
      </moduleArtifactAdapter>
     
      <moduleArtifactAdapter
            id="org.eclipse.jst.jee.server.ejb3"
             class="org.eclipse.jst.jee.ui.internal.deployables.EJBDeployableArtifactAdapterFactory">
         <enablement>
           <with variable="selection">
             <adapt type="org.eclipse.jdt.core.ICompilationUnit"/>
           </with>
         </enablement>
      </moduleArtifactAdapter>
      <moduleArtifactAdapter
            id="org.eclipse.jst.jee.server.ejb4"
             class="org.eclipse.jst.jee.ui.internal.deployables.EJBDeployableArtifactAdapterFactory">
         <enablement>
           <with variable="selection">
             <adapt type="org.eclipse.core.resources.IFile">
             <test forcePluginActivation="true"
							property="org.eclipse.wst.common.project.facet.core.projectFacet"
							value="jst.ejb:3.0" />
			 </adapt>
           </with>
         </enablement>
      </moduleArtifactAdapter>
      <moduleArtifactAdapter
            id="org.eclipse.jst.jee.server.ejb5"
             class="org.eclipse.jst.jee.ui.internal.deployables.EJBDeployableArtifactAdapterFactory">
         <enablement>
           <with variable="selection">
             <adapt type="org.eclipse.core.resources.IProject">
              <test forcePluginActivation="true"
							property="org.eclipse.wst.common.project.facet.core.projectFacet"
							value="jst.ejb:3.0" />
			 </adapt>
           </with>
         </enablement>
      </moduleArtifactAdapter>
      
      <moduleArtifactAdapter
            id="org.eclipse.jst.j2ee.server.ejb6"
            class="org.eclipse.jst.jee.ui.internal.deployables.EJBDeployableArtifactAdapterFactory">
         <enablement>
           <with variable="selection">
             <adapt type="org.eclipse.jst.javaee.ejb.MessageDrivenBean"/>
           </with>
         </enablement>
      </moduleArtifactAdapter>
      
      <moduleArtifactAdapter
            id="org.eclipse.jst.j2ee.server.ejb7"
            class="org.eclipse.jst.jee.ui.internal.deployables.EJBDeployableArtifactAdapterFactory">
         <enablement>
           <with variable="selection">
             <adapt type="org.eclipse.jst.javaee.ejb.EntityBean"/>
           </with>
         </enablement>
      </moduleArtifactAdapter>
      </extension>
   <extension
         point="org.eclipse.wst.server.core.moduleArtifactAdapters">
      <moduleArtifactAdapter
            class="org.eclipse.jst.jee.ui.internal.deployables.EJBDeployableArtifactAdapterFactory"
            id="org.eclipse.jst.jee.server.ejb">
         <enablement>
            <with
                  variable="selection">
               <adapt
                     type="org.eclipse.core.resources.IProject">
                  <test
                        forcePluginActivation="true"
                        property="org.eclipse.wst.common.project.facet.core.projectFacet"
                        value="jst.ejb:3.0">
                  </test>
               </adapt>
            </with>
         </enablement>
      </moduleArtifactAdapter>
      <moduleArtifactAdapter
            class="org.eclipse.jst.jee.ui.internal.deployables.EJBDeployableArtifactAdapterFactory"
            id="org.eclipse.jst.jee.server.ejb77">
         <enablement>
            <with
                  variable="selection">
               <instanceof
                     value="org.eclipse.jst.jee.ui.internal.navigator.ejb.GroupEJBProvider">
               </instanceof>
            </with>
         </enablement>
      </moduleArtifactAdapter>
   </extension>
  
  <extension
         point="org.eclipse.ui.popupMenus">
      <objectContribution
            objectClass="org.eclipse.core.resources.IProject"
            adaptable="true"
            id="org.eclipse.jst.jee.ui.CreateDeploymentFilesAction">
         <action
               class="org.eclipse.jst.jee.ui.internal.CreateDeploymentFilesActionDelegate"
               enablesFor="1"
               icon="icons/full/ctool16/dep_desc.gif"
               id="createDeploymentFiles"
               label="%create_deploy_files"
               menubarPath="javeeUIPopupMenuCategory/slot2">
		</action>
        <enablement>
            <or>
               	  <adapt type="org.eclipse.core.resources.IProject">
						<test forcePluginActivation="true"
							property="org.eclipse.wst.common.project.facet.core.projectFacet"
							value="jst.ejb:[3.0" />
				  </adapt>
				  <adapt type="org.eclipse.core.resources.IProject">
						<test forcePluginActivation="true"
							property="org.eclipse.wst.common.project.facet.core.projectFacet"
							value="jst.web:[2.5" />
				  </adapt>
				  <adapt type="org.eclipse.core.resources.IProject">
						<test forcePluginActivation="true"
							property="org.eclipse.wst.common.project.facet.core.projectFacet"
							value="jst.ear:[5.0" />
				  </adapt>
				  <adapt type="org.eclipse.core.resources.IProject">
						<test forcePluginActivation="true"
							property="org.eclipse.wst.common.project.facet.core.projectFacet"
							value="jst.appclient:[5.0" />
				  </adapt>
		    </or>
         </enablement>         		   		
      </objectContribution>
      <objectContribution
            id="show_dep_prop_page"
            nameFilter="*"
            objectClass="org.eclipse.jst.jee.ui.internal.navigator.ear.ModulesNode">
         <action
               class="org.eclipse.jst.jee.ui.internal.navigator.ear.ShowDepPropPageAction"
               enablesFor="1"
               id="show_dep_prop_page"
               label="Add/Remove"
               menubarPath="additions">
         </action>
      </objectContribution>
   </extension>
   
   <!--
     <extension
         point="org.eclipse.wst.common.frameworks.OperationExtension"
         id="org.eclipse.wst.common.frameworks.datamodel.tests.extended">
      <operationExtension
            id="org.eclipse.jst.jee.ui.internal.CreateDeploymentFilesDataModelOperation"
            postOperationClass="org.eclipse.wst.common.frameworks.datamodel.tests.extended.B"
            preOperationClass="org.eclipse.wst.common.frameworks.datamodel.tests.extended.A"/>
 
 	</extension>
    -->
    <extension  
	  point="org.eclipse.ui.navigator.navigatorContent">
   <navigatorContent
         activeByDefault="true"
         contentProvider="org.eclipse.jst.jee.ui.internal.navigator.Ejb3ContentProvider"
         icon="icons/ejbgroup_obj.gif"
         id="org.eclipse.jst.jee.ui.ejb"
         labelProvider="org.eclipse.jst.jee.ui.internal.navigator.Ejb3LabelProvider"
         name="JEE Navigator Content EJB"
         priority="highest">
     <triggerPoints>
        <or>
           <adapt type="org.eclipse.core.resources.IProject">
              <or>
                 <test
                       forcePluginActivation="true"
                       property="org.eclipse.wst.common.project.facet.core.projectFacet"
                       value="jst.ejb:3.0"/>
                 <test
                       forcePluginActivation="true"
                       property="org.eclipse.wst.common.project.facet.core.projectFacet"
                       value="jst.appclient:5.0">
                 </test>
              </or>
           </adapt>
			<instanceof value="org.eclipse.jst.jee.ui.internal.navigator.AbstractDDNode" />
		 	<instanceof value="org.eclipse.jst.jee.ui.internal.navigator.ejb.BeanNode" />
  			<instanceof value="org.eclipse.jst.javaee.core.JavaEEObject" />
   <instanceof
         value="org.eclipse.jst.jee.ui.internal.navigator.AbstractGroupProvider">
   </instanceof>
   <instanceof
         value="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
   </instanceof>
        </or>
     </triggerPoints>
     <possibleChildren>
        <or>
			<instanceof value="org.eclipse.jst.jee.ui.internal.navigator.AbstractDDNode" />
		 	<instanceof value="org.eclipse.jst.jee.ui.internal.navigator.ejb.BeanNode" />
  			<instanceof value="org.eclipse.jst.javaee.core.JavaEEObject" />
   <instanceof
         value="org.eclipse.jst.jee.ui.internal.navigator.AbstractGroupProvider">
   </instanceof>
        </or>
     </possibleChildren>
    

     <commonWizard
           menuGroupId="org.eclipse.jst.ejb.ui"
           type="new"
           wizardId="org.eclipse.jst.ejb.ui.internal.wizard.AddSessionBeanWizard">
        <enablement>
           <or>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.ejb.GroupEJBProvider">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.ejb.GroupEjbSession">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.javaee.ejb.SessionBean">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.ejb.BeanInterfaceNode">
              </instanceof>
              <adapt
                    type="org.eclipse.jst.jee.ui.internal.navigator.ejb.BeanNode">
                 <or>
                    <test
                          forcePluginActivation="true"
                          property="org.eclipse.jst.jee.ui.beanType"
                          value="isSessionBean">
                    </test>
                 </or>
              </adapt>
           </or>
        </enablement>
     </commonWizard>
     <commonWizard
           menuGroupId="org.eclipse.jst.ejb.ui"
           type="new"
           wizardId="org.eclipse.jst.ejb.ui.internal.wizard.AddMessageDrivenBeanWizard">
        <enablement>
           <or>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.ejb.GroupEJBProvider">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.ejb.GroupEjbMessageDriven">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.javaee.ejb.MessageDrivenBean">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.ejb.ActivationConfigProperties">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.javaee.ejb.ActivationConfigProperty">
              </instanceof>
              <adapt
                    type="org.eclipse.jst.jee.ui.internal.navigator.ejb.BeanNode">
                 <or>
                    <test
                          forcePluginActivation="true"
                          property="org.eclipse.jst.jee.ui.beanType"
                          value="isMessageDrivenBean">
                    </test>
                 </or>
              </adapt>
           </or></enablement>
     </commonWizard>
     
     
     <actionProvider
           class="org.eclipse.jst.jee.ui.internal.navigator.JEEActionProvider"
           id="org.eclipse.jst.javaee.ui.JEEActionProvider">
        <enablement>
           <or>
              <instanceof value="org.eclipse.jst.jee.ui.internal.navigator.AbstractDDNode"/>
              <instanceof value="org.eclipse.jst.jee.ui.internal.navigator.ejb.BeanNode"/>
              <instanceof value="org.eclipse.jst.jee.ui.internal.navigator.ejb.BeanInterfaceNode"/>
              <instanceof value="org.eclipse.jst.javaee.core.JavaEEObject" />
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.AbstractGroupProvider">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.web.WebAppProvider">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.appclient.GroupAppClientProvider">
              </instanceof>
           </or>
        </enablement>
     </actionProvider>
     

     <actionProvider
			class="org.eclipse.ui.internal.navigator.resources.actions.NewActionProvider"
			id="org.eclipse.ui.navigator.resources.JEENewActions">
			<enablement>
    <or>
       <instanceof
             value="org.eclipse.jst.jee.ui.internal.navigator.AbstractDDNode">
       </instanceof>
       <instanceof
             value="org.eclipse.jst.jee.ui.internal.navigator.AbstractGroupProvider">
       </instanceof>

       <instanceof
             value="org.eclipse.jst.jee.ui.internal.navigator.web.WebAppProvider">
       </instanceof>
       <instanceof
             value="org.eclipse.jst.jee.ui.internal.navigator.web.AbstractSubWebProviders">
       </instanceof>
       <instanceof
             value="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
       </instanceof></or>
			</enablement>
	 </actionProvider>
    
     <actionProvider
           class="org.eclipse.ui.internal.navigator.resources.actions.ResourceMgmtActionProvider"
           id="org.eclipse.ui.navigator.resources.actions.JEEResourceMgmtAction">
        <enablement>
           <or>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.AbstractDDNode">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.AbstractGroupProvider">
              </instanceof>
              <adapt
                    type="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
              </adapt>

           </or>
        </enablement>
     </actionProvider>
     <actionProvider
           class="org.eclipse.ui.internal.navigator.resources.actions.WorkManagementActionProvider"
           id="org.eclipse.ui.internal.navigator.resources.actions.JEEWorkMgmtAction">
           <enablement>
           <or>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.AbstractDDNode">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.AbstractGroupProvider">
              </instanceof>

		       <instanceof
		             value="org.eclipse.jst.javaee.core.JavaEEObject">
		       </instanceof>
         <adapt
               type="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
         </adapt>

           </or>
        </enablement>
     </actionProvider>
     <actionProvider
           class="org.eclipse.ui.internal.navigator.resources.actions.PortingActionProvider"
           id="org.eclipse.ui.internal.navigator.resources.actions.JEEPortingAction">
           <enablement>
           <or>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.AbstractGroupProvider">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.AbstractDDNode">
              </instanceof>
              <adapt
                    type="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
              </adapt>

           </or>
        </enablement>
     </actionProvider>
     <commonWizard
           menuGroupId="org.eclipse.jst.ejb.export1"
           type="export"
           wizardId="org.eclipse.jst.ejb.ui.internal.wizard.EJBComponentExportWizard">
        <enablement>
           <or>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.ejb.GroupEJBProvider">
              </instanceof>
           </or>
        </enablement>
     </commonWizard>
     	 
     	 
  </navigatorContent>
  
  <navigatorContent
        contentProvider="org.eclipse.jst.jee.ui.internal.navigator.Web25ContentProvider"
        icon="icons/webgroup_obj.gif"
        id="org.eclipse.jst.jee.ui.web"
        labelProvider="org.eclipse.jst.jee.ui.internal.navigator.Web25LabelProvider"
        name="JEE Navigator Content WEB"
        priority="highest">
     <triggerPoints>
        <or>
           <adapt type="org.eclipse.core.resources.IProject">
              <or>
                 <test
                       forcePluginActivation="true"
                       property="org.eclipse.wst.common.project.facet.core.projectFacet"
                       value="jst.web:2.5"/>
              </or>
           </adapt>
   <instanceof
         value="org.eclipse.jst.jee.ui.internal.navigator.web.WebAppProvider">
   </instanceof>
   <instanceof
         value="org.eclipse.jst.jee.ui.internal.navigator.AbstractGroupProvider">
   </instanceof>
        </or>
     </triggerPoints>
     <possibleChildren>
        <or>
           <instanceof
                 value="org.eclipse.jst.jee.ui.internal.navigator.AbstractGroupProvider">
           </instanceof>
           <instanceof
                 value="org.eclipse.jst.jee.ui.internal.navigator.web.WebAppProvider">
           </instanceof>
           <instanceof
                 value="org.eclipse.jst.jee.ui.internal.navigator.web.WebArtifactNode">
           </instanceof>
                <instanceof
                      value="org.eclipse.jst.javaee.core.JavaEEObject">
                </instanceof>
        </or>
     </possibleChildren>
     
     
     <actionProvider
           class="org.eclipse.ui.internal.navigator.resources.actions.ResourceMgmtActionProvider"
           id="org.eclipse.ui.internal.navigator.resources.actions.JEEWebResourceMgmtAction">
        <enablement>
           <or>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.web.AbstractSubWebProviders">
              </instanceof>
              <!--<instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.web.WebAppProvider">
              </instanceof>-->
           </or>
        </enablement>
     </actionProvider>
     <actionProvider
           class="org.eclipse.ui.internal.navigator.resources.actions.WorkManagementActionProvider"
           id="org.eclipse.ui.internal.navigator.resources.actions.JEEWebWrkMngmntAction">
           <enablement>
           <or>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.web.AbstractSubWebProviders">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.web.WebAppProvider">
              </instanceof>

		       <instanceof
		             value="org.eclipse.jst.javaee.core.JavaEEObject">
		       </instanceof>

           </or>
        </enablement>
     </actionProvider>
     <actionProvider
           class="org.eclipse.ui.internal.navigator.resources.actions.PortingActionProvider"
           id="org.eclipse.ui.internal.navigator.resources.actions.JEEWebPortingAction">
           <enablement>
           <or>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.web.AbstractSubWebProviders">
              </instanceof>
              <!--
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.web.WebAppProvider">
              </instanceof>-->
           </or>
        </enablement>
     </actionProvider>
     
     <commonWizard
           menuGroupId="org.eclipse.wst.web.ui.webclass"
           type="new"
           wizardId="org.eclipse.jst.servlet.ui.internal.wizard.AddServletWizard">
        <enablement>
           <or>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.web.WebAppProvider">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.web.GroupServletItemProvider">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.javaee.web.Servlet">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.web.GroupServletMappingItemProvider">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.javaee.web.ServletMapping">
              </instanceof>
           </or></enablement>
     </commonWizard>
     <commonWizard
           menuGroupId="org.eclipse.wst.web.ui.webclass"
           type="new"
           wizardId="org.eclipse.jst.servlet.ui.internal.wizard.AddFilterWizard">
        <enablement>
           <or>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.web.WebAppProvider">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.web.GroupFiltersItemProvider">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.javaee.web.Filter">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.web.GroupFilterMappingItemProvider">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.javaee.web.FilterMapping">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.javaee.web.Servlet">
              </instanceof>
           </or></enablement>
     </commonWizard>
     <commonWizard
           menuGroupId="org.eclipse.wst.web.ui.webclass"
           type="new"
           wizardId="org.eclipse.jst.servlet.ui.internal.wizard.AddListenerWizard">
        <enablement>
           <or>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.web.WebAppProvider">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.web.GroupListenerItemProvider">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.javaee.core.Listener">
              </instanceof>
           </or></enablement>
     </commonWizard>
     <commonWizard
           menuGroupId="org.eclipse.wst.web.export"
           type="export"
           wizardId="org.eclipse.jst.servlet.ui.internal.wizard.WebComponentExportWizard">
        <enablement>
           <or>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.web.WebAppProvider">
              </instanceof>
           </or>
        </enablement>
     </commonWizard>
  </navigatorContent>
  <navigatorContent
        activeByDefault="true"
        contentProvider="org.eclipse.jst.jee.ui.internal.navigator.Ear5ContentProvider"
        icon="icons/eargroup_obj.gif"
        id="org.eclipse.jst.jee.ui.ear"
        labelProvider="org.eclipse.jst.jee.ui.internal.navigator.Ear5LabelProvider"
        name="JEE Navigator Content EAR"
        priority="highest">
     <triggerPoints>
        <or>
           <instanceof
                 value="org.eclipse.core.resources.IProject">
           </instanceof>
           <instanceof
                 value="org.eclipse.jst.jee.ui.internal.navigator.ear.BundledNode">
           </instanceof>
           <adapt
                 type="org.eclipse.core.resources.IProject">
              <test
                    forcePluginActivation="true"
                    property="org.eclipse.wst.common.project.facet.core.projectFacet"
                    value="jst.ear:5.0">
              </test>
           </adapt>
           <instanceof
                 value="org.eclipse.jst.jee.ui.internal.navigator.ear.ModulesNode">
           </instanceof>
           <instanceof
                 value="org.eclipse.jst.jee.ui.internal.navigator.ear.BundledLibsNode">
           </instanceof>
        </or>
     </triggerPoints>
     <possibleChildren>
        <or>
           <instanceof
                 value="java.io.File">
           </instanceof>
           <adapt
                 type="org.eclipse.core.resources.IProject">
              <or>
                 <test
                       forcePluginActivation="true"
                       property="org.eclipse.wst.common.project.facet.core.projectFacet"
                       value="jst.web">
                 </test>
                 <test
                       forcePluginActivation="true"
                       property="org.eclipse.wst.common.project.facet.core.projectFacet"
                       value="jst.ejb">
                 </test>
                 <test
                       forcePluginActivation="true"
                       property="org.eclipse.wst.common.project.facet.core.projectFacet"
                       value="jst.utility">
                 </test>
                 <test
                       forcePluginActivation="true"
                       property="org.eclipse.wst.common.project.facet.core.projectFacet"
                       value="jst.ear">
                 </test>
                 <test
                       forcePluginActivation="true"
                       property="org.eclipse.wst.common.project.facet.core.projectFacet"
                       value="jst.appclient">
                 </test>
                 <test
                       forcePluginActivation="true"
                       property="org.eclipse.wst.common.project.facet.core.projectFacet"
                       value="jst.connector">
                 </test>
              </or>
           </adapt>
           <instanceof
                 value="org.eclipse.jst.jee.ui.internal.navigator.ear.ModulesNode"/>
           <instanceof
                 value="org.eclipse.jst.jee.ui.internal.navigator.ear.BundledNode"/>
           <instanceof
                 value="org.eclipse.core.internal.resources.File">
           </instanceof>
           <instanceof
                 value="org.eclipse.jdt.internal.core.JarPackageFragmentRoot">
           </instanceof>
           <instanceof
                 value="org.eclipse.core.internal.resources.Project">
           </instanceof>
           <instanceof
                 value="org.eclipse.wst.common.componentcore.resources.IVirtualReference">
           </instanceof>
        </or>
     </possibleChildren>
     <commonSorter
           class="org.eclipse.jst.jee.ui.internal.navigator.ear.Application5ViewerSorter"
           id="org.eclipse.jst.jee.navigator.internal.ApplicationViewerSorter">
     </commonSorter>
     <dropAssistant
           class="org.eclipse.jst.jee.ui.internal.navigator.dnd.AddProjectToEARDropAssistant"
           id="org.eclipse.jst.jee.navigator.ui.AddModulesToEAR">
        <possibleDropTargets>
           <or>
              <adapt
                    type="org.eclipse.core.resources.IProject">
                 <test
                       forcePluginActivation="true"
                       property="org.eclipse.wst.common.project.facet.core.projectFacet"
                       value="jst.ear">
                 </test>
              </adapt>
              <instanceof
                    value="org.eclipse.jst.javaee.application.Application">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.ear.AbstractEarNode">
              </instanceof>
              <instanceof
                    value="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
              </instanceof>
           </or>
        </possibleDropTargets>
     </dropAssistant>
     <commonWizard
           menuGroupId="org.eclipse.jst.ear.ui"
           type="new"
           wizardId="org.eclipse.jst.ejb.ui.project.facet.EjbProjectWizard">
        <enablement>
           <or>
              <adapt
                    type="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
              </adapt>
           </or></enablement>
     </commonWizard>
     <commonWizard
           menuGroupId="org.eclipse.jst.ear.ui"
           type="new"
           wizardId="org.eclipse.jst.servlet.ui.project.facet.WebProjectWizard">
        <enablement>
           <or>
              <adapt
                    type="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
              </adapt>
           </or>
        </enablement>
     </commonWizard>
     <commonWizard
           menuGroupId="org.eclipse.jst.ear.ui"
           type="new"
           wizardId="org.eclipse.jst.j2ee.ui.project.facet.EarProjectWizard">
        <enablement>
           <or>
              <adapt
                    type="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
              </adapt>
           </or>
        </enablement>
     </commonWizard>
     <commonWizard
           menuGroupId="org.eclipse.jst.ear.ui"
           type="new"
           wizardId="org.eclipse.jst.j2ee.ui.project.facet.appclient.AppClientProjectWizard">
        <enablement>
           <or>
              <adapt
                    type="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
              </adapt>
           </or>
        </enablement>
     </commonWizard>
     <commonWizard
           menuGroupId="org.eclipse.jst.ear.ui"
           type="new"
           wizardId="org.eclipse.jst.j2ee.jca.ui.internal.wizard.ConnectorProjectWizard">
        <enablement>
           <or>
              <adapt
                    type="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
              </adapt>
           </or>
        </enablement>
     </commonWizard>
     <commonWizard
           menuGroupId="org.eclipse.jst.ear.ui.export"
           type="export"
           wizardId="org.eclipse.jst.j2ee.internal.wizard.EARComponentExportWizard">
        <enablement>
           <or>
              <adapt
                    type="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
              </adapt>
           </or>
        </enablement>
     </commonWizard>
     <commonWizard
           menuGroupId="org.eclipse.jst.ear.ui.import"
           type="import"
           wizardId="org.eclipse.jst.j2ee.internal.wizard.AppClientComponentImportWizard">
        <enablement>
           <or>
              <adapt
                    type="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
              </adapt>
           </or>
        </enablement>
     </commonWizard>
     <commonWizard
           menuGroupId="org.eclipse.jst.ear.ui.import"
           type="import"
           wizardId="org.eclipse.jst.j2ee.internal.wizard.EARComponentImportWizard">
        <enablement>
           <or>
              <adapt
                    type="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
              </adapt>
           </or>
        </enablement>
     </commonWizard>
     <commonWizard
           menuGroupId="org.eclipse.jst.ear.ui.import"
           type="import"
           wizardId="org.eclipse.jst.j2ee.internal.wizard.J2EEUtilityJarImportWizardNew">
        <enablement>
           <or>
              <adapt
                    type="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
              </adapt>
           </or>
        </enablement>
     </commonWizard>
     <commonWizard
           menuGroupId="org.eclipse.jst.ear.ui.import"
           type="import"
           wizardId="org.eclipse.jst.ejb.ui.internal.wizard.EJBComponentImportWizard">
        <enablement>
           <or>
              <adapt
                    type="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
              </adapt>
           </or>
        </enablement>
     </commonWizard>
     <commonWizard
           menuGroupId="org.eclipse.jst.ear.ui.import"
           type="import"
           wizardId="org.eclipse.jst.servlet.ui.internal.wizard.WebComponentImportWizard">
        <enablement>
           <or>
              <adapt
                    type="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
              </adapt>
           </or>
        </enablement>
     </commonWizard>
     <commonWizard
           menuGroupId="org.eclipse.jst.ear.ui.import"
           type="import"
           wizardId="org.eclipse.jst.j2ee.jca.ui.internal.wizard.ConnectorComponentImportWizard">
        <enablement>
           <or>
              <adapt
                    type="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
              </adapt>
           </or>
        </enablement>
     </commonWizard>
  </navigatorContent>
  <navigatorContent
        activeByDefault="true"
        contentProvider="org.eclipse.jst.jee.ui.internal.navigator.AppClient5ContentProvider"
        icon="icons/appclientgroup_obj.gif"
        id="org.eclipse.jst.jee.ui.appclient"
        labelProvider="org.eclipse.jst.jee.ui.internal.navigator.AppClient5LabelProvider"
        name="JEE Navigator Content App Client"
        priority="highest">
     <triggerPoints>
        <or>
           <instanceof
                 value="org.eclipse.core.resources.IProject">
           </instanceof>
           <adapt
                 type="org.eclipse.core.resources.IProject">
              <test
                    forcePluginActivation="true"
                    property="org.eclipse.wst.common.project.facet.core.projectFacet"
                    value="jst.appclient:5.0">
              </test>
           </adapt>
           <instanceof
                 value="org.eclipse.jst.javaee.core.JavaEEObject">
           </instanceof>
        </or>
     </triggerPoints>
     <possibleChildren>
        <or>
           <instanceof
                 value="org.eclipse.jst.javaee.core.JavaEEObject">
           </instanceof>
           <adapt
                 type="org.eclipse.core.resources.IProject">
              <or>
                 <test
                       forcePluginActivation="true"
                       property="org.eclipse.wst.common.project.facet.core.projectFacet"
                       value="jst.appclient:5.0">
                 </test>
              </or>
           </adapt>
        </or>
     </possibleChildren>
  </navigatorContent>
	</extension>
   <extension
         point="org.eclipse.core.runtime.adapters">
      <factory
            adaptableType="org.eclipse.jst.jee.ui.internal.navigator.ejb.GroupEJBProvider"
            class="org.eclipse.jst.jee.ui.internal.deployables.EnterpriseDeployableArtifactAdapterFactory">
         <adapter
               type="org.eclipse.debug.ui.actions.ILaunchable">
         </adapter>
      </factory>
      <factory
            adaptableType="org.eclipse.jst.javaee.core.JavaEEObject"
            class="org.eclipse.jst.jee.ui.internal.deployables.EnterpriseDeployableArtifactAdapterFactory">
         <adapter
               type="org.eclipse.debug.ui.actions.ILaunchable">
         </adapter>
      </factory>
      <factory
            adaptableType="org.eclipse.jst.jee.ui.internal.navigator.web.WebAppProvider"
            class="org.eclipse.jst.jee.ui.internal.deployables.EnterpriseDeployableArtifactAdapterFactory">
         <adapter
               type="org.eclipse.debug.ui.actions.ILaunchable">
         </adapter>
      </factory>
      
    
    <factory
          adaptableType="org.eclipse.jst.javaee.core.JavaEEObject"
          class="org.eclipse.jst.j2ee.navigator.internal.J2EEEMFAdapterFactory">
       <adapter type="org.eclipse.core.resources.IResource"/>
    </factory>
      
   </extension>
   <extension
         point="org.eclipse.ui.navigator.viewer">
      <viewerActionBinding viewerId="org.eclipse.ui.navigator.ProjectExplorer">
         <includes>
            <actionExtension pattern="org.eclipse.jst.javaee.ui.JEEActionProvider"/>
         </includes>
      </viewerActionBinding>
   </extension>
   <extension
         point="org.eclipse.ui.decorators">
      <decorator
            adaptable="true"
            location="TOP_RIGHT"
            lightweight="true"
            label="%ENTERPRISE_BEAN_DECORATOR"
            state="true"
            class="org.eclipse.jst.jee.ui.internal.navigator.ejb.BeanDecorator"
            id="org.eclipse.jst.jee.ui.internal.navigator.ejb.BeanDecorator">
         <enablement>
           <or>
            <objectClass
                  name="org.eclipse.jst.jee.ui.internal.navigator.ejb.BeanInterfaceNode">
            </objectClass>
            <objectClass
                  name="org.eclipse.jst.jee.ui.internal.navigator.ejb.BeanNode">
            </objectClass>
           </or>
         </enablement>
         <description>
            %ENTERPRISE_BEAN_DECORATOR.DESCRIPTION
         </description>
      </decorator>
   </extension>  
      <extension
   		 point="org.eclipse.ui.navigator.viewer">
      <viewerContentBinding
         viewerId="org.eclipse.ui.navigator.ProjectExplorer">
         <includes>
           <contentExtension pattern="org.eclipse.jst.jee.ui.*"/>
           <contentExtension pattern="org.eclipse.jst.jee.ui.filters.*"/>
           <contentExtension
                 pattern="org.eclipse.jst.jee.ui.internal.navigator.*">
           </contentExtension>
         </includes>
      </viewerContentBinding>
   </extension>
   
      
<!-- ====================================================== -->
<!--           Label Decorators                             -->
<!-- ====================================================== -->
   <extension
         point="org.eclipse.ui.decorators">
      <decorator
            adaptable="true"
            location="TOP_LEFT"
            lightweight="true"
            label="%jeeProjectDecorator"
            state="true"
            class="org.eclipse.jst.j2ee.navigator.internal.J2EEProjectDecorator"
            id="org.eclipse.jst.jee.navigator.internal.JEEProjectDecorator">
         <enablement>
           <or>
            <objectClass name="org.eclipse.core.resources.IProject"/>
            <objectClass name="org.eclipse.jdt.core.IJavaProject"/>
           </or>
         </enablement>
         <description>
            %jeeProjectDecorator.description
         </description>
      </decorator>
   </extension>
   
   <extension
         point="org.eclipse.ui.decorators">
      <decorator
            adaptable="true"
            label="%JAVA_EE_5_PROBLEM_MARKER_RESOURCE_DECORATOR"
            state="true"
            class="org.eclipse.jdt.ui.ProblemsLabelDecorator"
            id="org.eclipse.jst.jee.navigator.ui.java.resource.decorator">
            <enablement>
                <objectClass name="org.eclipse.core.resources.IResource"/> 
            </enablement>
            <description>
               %JAVA_EE_5_PROBLEM_MARKER_RESOURCE_DECORATOR.DESCRIPTION
            </description>
      </decorator>
   </extension>
   <extension
         point="org.eclipse.core.expressions.propertyTesters">
      <propertyTester
            class="org.eclipse.jst.jee.ui.internal.navigator.ejb.BeanNodePropertyTester"
            id="org.eclipse.jst.jee.ui.BeanNodePropertyTester"
            namespace="org.eclipse.jst.jee.ui"
            properties="beanType"
            type="org.eclipse.jst.jee.ui.internal.navigator.ejb.BeanNode">
      </propertyTester>
   </extension>  
      
      
      
   </plugin>
