<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.2"?>
<plugin>  
    <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.core.runtime.adapters">
       <factory
             adaptableType="org.eclipse.jst.jee.ui.internal.navigator.AbstractDDNode"
             class="org.eclipse.jst.jee.ui.internal.navigator.DDAdapterFactory">
          <adapter
                type="org.eclipse.jdt.core.IJavaElement">
          </adapter>
       </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>

      <moduleArtifactAdapter
            id="org.eclipse.jst.jee.web.server.webresource6"
             class="org.eclipse.jst.jee.ui.internal.deployables.WebDeployableArtifactAdapterFactory">      
         <enablement>
           <with variable="selection">
             <adapt type="org.eclipse.jst.javaee.ejb.SessionBean"/>
           </with>
         </enablement>
       </moduleArtifactAdapter>

      <moduleArtifactAdapter
            id="org.eclipse.jst.jee.web.server.webresource7"
             class="org.eclipse.jst.jee.ui.internal.deployables.WebDeployableArtifactAdapterFactory">      
         <enablement>
           <with variable="selection">
             <adapt type="org.eclipse.jst.javaee.ejb.MessageDrivenBean"/>
           </with>
         </enablement>
       </moduleArtifactAdapter>
   </extension>
   
   
   <!-- ==================================================================== -->
<!-- Extension point: org.eclipse.etools.server.core.moduleObjectAdapters -->
<!-- Purpose: Define adapters for Web fragment 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.WebFragment"/>
           </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.webfragment:[3.0" />
			 </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.webfragment:[3.0" />
			 </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.webfragment:[3.0" />             
             </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>
				  <adapt type="org.eclipse.core.resources.IProject">
						<test forcePluginActivation="true"
							property="org.eclipse.wst.common.project.facet.core.projectFacet"
							value="jst.connector:[1.6" />
				  </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_MODULE_DEPENDENCIES_ACTION"
               menubarPath="additions">
         </action>
      </objectContribution>
   </extension>
   
   
   <extension
         point="org.eclipse.ui.popupMenus">
      <objectContribution
            adaptable="true"
            id="org.eclipse.jst.jee.ui.CreateDeploymentFilesAction2"
            objectClass="java.lang.Object">
         <action
               class="org.eclipse.jst.jee.ui.internal.CreateDeploymentFilesActionDelegate"
               enablesFor="1"
               icon="icons/full/ctool16/dep_desc.gif"
               id="createDeploymentFiles"
               label="%create_deploy_files">
		</action>
        <enablement>
            <or>
      <instanceof
            value="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
      </instanceof>
      <instanceof
            value="org.eclipse.jst.jee.ui.internal.navigator.ejb.GroupEJBProvider">
      </instanceof>
      <instanceof
            value="org.eclipse.jst.jee.ui.internal.navigator.web.WebAppProvider">
      </instanceof>
      <instanceof
            value="org.eclipse.jst.jee.ui.internal.navigator.appclient.GroupAppClientProvider">
      </instanceof>
		    </or>
         </enablement>         		   		
      </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="%EJB_NAVIGATOR_CONTENT"
         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.ejb:3.1">
                 </test>
                 <test
                       forcePluginActivation="true"
                       property="org.eclipse.wst.common.project.facet.core.projectFacet"
                       value="jst.ejb:3.2">
                 </test>
                  <test
                       forcePluginActivation="true"
                       property="org.eclipse.wst.common.project.facet.core.projectFacet"
                       value="jst.ejb:4.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.ejb.AbstractEjbGroupProvider">
   </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.ejb.AbstractEjbGroupProvider">
   </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="%WEB_NAVIGATOR_CONTENT"
        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"/>
                 <test
                       forcePluginActivation="true"
                       property="org.eclipse.wst.common.project.facet.core.projectFacet"
                       value="jst.web:3.0">
                 </test>
                 <test
                       forcePluginActivation="true"
                       property="org.eclipse.wst.common.project.facet.core.projectFacet"
                       value="jst.web:3.1">
                 </test>
                 <test
                       forcePluginActivation="true"
                       property="org.eclipse.wst.common.project.facet.core.projectFacet"
                       value="jst.web:4.0">
                 </test>
                 <test
                       forcePluginActivation="true"
                       property="org.eclipse.wst.common.project.facet.core.projectFacet"
                       value="jst.web:5.0">
                 </test>
                 <test
                       forcePluginActivation="true"
                       property="org.eclipse.wst.common.project.facet.core.projectFacet"
                       value="jst.web:6.0">
                 </test>
              </or>
           </adapt>
   <instanceof
         value="org.eclipse.jst.jee.ui.internal.navigator.web.AbstractWebGroupProvider">
   </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>
     </triggerPoints>
     <possibleChildren>
        <or>
           <instanceof
                 value="org.eclipse.jst.jee.ui.internal.navigator.web.AbstractWebGroupProvider">
           </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="%EAR_NAVIGATOR_CONTENT"
        priority="highest">
     <triggerPoints>
        <or>
           <instanceof
                 value="org.eclipse.jst.jee.ui.internal.navigator.ear..BundledNode">
           </instanceof>
            <instanceof
                 value="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
           </instanceof>
           <adapt
                 type="org.eclipse.core.resources.IProject">
                 <or>
              <test
                    forcePluginActivation="true"
                    property="org.eclipse.wst.common.project.facet.core.projectFacet"
                    value="jst.ear:5.0">
                </test>
                <test
                    forcePluginActivation="true"
                    property="org.eclipse.wst.common.project.facet.core.projectFacet"
                    value="jst.ear:6.0">
                </test>
                <test
                    forcePluginActivation="true"
                    property="org.eclipse.wst.common.project.facet.core.projectFacet"
                    value="jst.ear:7.0">
                </test>
                <test
                    forcePluginActivation="true"
                    property="org.eclipse.wst.common.project.facet.core.projectFacet"
                    value="jst.ear:8.0">
                </test>
                 <test
                    forcePluginActivation="true"
                    property="org.eclipse.wst.common.project.facet.core.projectFacet"
                    value="jst.ear:10.0">
                </test>
              </or>
           </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>
           <instanceof
                 value="org.eclipse.wst.common.componentcore.resources.IVirtualReference">
           </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.jst.jee.ui.internal.navigator.ear.GroupEARProvider">
           </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="%APP_CLIENT_NAVIGATOR_CONTENT"
          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.appclient:5.0">
              </test>
              <test
                    forcePluginActivation="true"
                    property="org.eclipse.wst.common.project.facet.core.projectFacet"
                    value="jst.appclient:6.0">
              </test>
              <test
                    forcePluginActivation="true"
                    property="org.eclipse.wst.common.project.facet.core.projectFacet"
                    value="jst.appclient:7.0">
              </test>
              <test
                    forcePluginActivation="true"
                    property="org.eclipse.wst.common.project.facet.core.projectFacet"
                    value="jst.appclient:8.0">
              </test>
               <test
                    forcePluginActivation="true"
                    property="org.eclipse.wst.common.project.facet.core.projectFacet"
                    value="jst.appclient:10.0">
              </test>
              </or>
           </adapt>
           <instanceof
                 value="org.eclipse.jst.javaee.core.JavaEEObject">
           </instanceof>
           <instanceof
                 value="org.eclipse.jst.jee.ui.internal.navigator.appclient.GroupAppClientProvider">
           </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>
           <instanceof
                 value="org.eclipse.jst.jee.ui.internal.navigator.appclient.GroupAppClientProvider">
           </instanceof>
        </or>
     </possibleChildren>
  </navigatorContent>
  <navigatorContent
        activeByDefault="true"
        contentProvider="org.eclipse.jst.jee.ui.internal.navigator.ConnectorContentProvider"
        icon="icons/connectorgroup_obj.gif"
        id="org.eclipse.jst.jee.ui.ra"
        labelProvider="org.eclipse.jst.jee.ui.internal.navigator.ConnectorLabelProvider"
        name="%CONNECTOR_NAVIGATOR_CONTENT"
        priority="highest">
     <possibleChildren>
        <or>
           <instanceof
                 value="org.eclipse.jst.javaee.core.JavaEEObject">
           </instanceof>
           <instanceof
                 value="org.eclipse.jst.jee.ui.internal.navigator.ra.AbstractConnectorGroupProvider">
           </instanceof>
        </or>
     </possibleChildren>
     <triggerPoints>
        <or>
           <adapt
                 type="org.eclipse.core.resources.IProject">
              <or>
                 <test
                       forcePluginActivation="true"
                       property="org.eclipse.wst.common.project.facet.core.projectFacet"
                       value="jst.connector:1.6">
                 </test>
                 <test
                       forcePluginActivation="true"
                       property="org.eclipse.wst.common.project.facet.core.projectFacet"
                       value="jst.connector:1.7">
                 </test>
                  <test
                       forcePluginActivation="true"
                       property="org.eclipse.wst.common.project.facet.core.projectFacet"
                       value="jst.connector:2.1">
                 </test>
              </or>
           </adapt>
           <instanceof
                 value="org.eclipse.jst.jee.ui.internal.navigator.ra.AbstractConnectorGroupProvider">
           </instanceof>
        </or>
     </triggerPoints>
  
  </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.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>
