<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>
<plugin>

    
<!-- Extension point to register specialized edit models with the EJBNature -->
<!-- Extension point to register specialized EJB commands -->
   <extension-point id="EJBCommandExtension" name="EJBCommandExtension" schema="schema/EJBCommandExtension.exsd"/>
<!--============================-->
<!-- Codegen Contributions                   -->
<!--============================-->
   
   <extension-point id="J2EEModulePostImport" name="J2EEModulePostImport" schema="schema/J2EEModulePostImport.exsd"/>

   <extension-point id="EARModuleExtension" name="EARModuleExtension" schema="schema/EARModuleExtension.exsd"/>
   <extension-point id="DeployerExtension" name="J2EE Deployer Extension" schema="schema/DeployerExtension.exsd"/>
   <extension-point id="resourceEnvRefType" name="Resource Environment Reference Type" schema="schema/resourceEnvRefType.exsd"/>
   <extension-point id="resourceRefType" name="Resource Reference Type" schema="schema/resourceRefType.exsd"/>
   <extension-point id="WebServiceClientGenerator" name="WebServiceClientGenerator" schema="schema/WebServiceClientGenerator.exsd"/>
   <extension-point id="WSDLServiceHelper" name="WSDLServiceHelper" schema="schema/WSDLServiceHelper.exsd"/>
   <extension-point id="optionalRefactorHandler" name="optionalRefactorHandler" schema="schema/optionalRefactorHandler.exsd"/>
   <extension-point id="classpathdep" name="classpathdep" schema="schema/ClasspathDep.exsd"/>
   <extension-point id="J2EEModelProvider" name="J2EE Model Provider" schema="schema/J2EEModelProvider.exsd"/>
   <extension-point id="archiveExportParticipants" name="Archive Export Participants Extension Point" schema="schema/archiveExportParticipants.exsd"/>
   <extension-point id="RefactoringChecker" name="RefactoringChecker" schema="schema/RefactoringChecker.exsd"/>
   <extension-point id="ClasspathDependencyExtension" name="ClasspathDependencyExtension" schema="schema/ClasspathDependencyExtension.exsd"/>

<!--============================-->
<!-- Module Core Nature         -->
<!--============================-->

  <extension
         id="ModuleCoreNature"
         name="Module Core Properties"
         point="org.eclipse.core.resources.natures">
      <runtime>
         <run
               class="org.eclipse.wst.common.componentcore.ComponentCore">
         </run>
      </runtime>
   </extension> -->

 
   <extension
         point="org.eclipse.wst.common.emfworkbench.integration.editModel">
      <editModel
            editModelID="jst.ear"
            factoryClass="org.eclipse.wst.common.componentcore.internal.impl.ArtifactEditModelFactory">
         <editModelResource
               autoload="false"
               URI="META-INF/application.xml"/>
      </editModel>
   </extension>
   <extension
         point="org.eclipse.wst.common.modulecore.artifactedit">
      <artifactedit
            typeID="jst.ear"
            class="org.eclipse.jst.j2ee.componentcore.util.EARArtifactEdit">
      </artifactedit>
   </extension> 
   <extension
         point="org.eclipse.wst.common.emfworkbench.integration.editModel">
      <editModel
            editModelID="jst.appclient"
            factoryClass="org.eclipse.jst.common.jdt.internal.integration.JavaArtifactEditModelFactory">
         <editModelResource
               autoload="false"
               URI="META-INF/application-client.xml"/>
      </editModel>
   </extension>
      <extension
         point="org.eclipse.wst.common.modulecore.artifactedit">
      <artifactedit
            typeID="jst.appclient"
            class="org.eclipse.jst.j2ee.applicationclient.componentcore.util.AppClientArtifactEdit">
      </artifactedit>
   </extension> 

<!--=================================-->
<!-- LibCopy Builder Contributions   -->
<!--=================================-->
   <extension
         id="LibCopyBuilder"
         name="Library Copying Builder"
         point="org.eclipse.core.resources.builders">
      <builder>
         <run
               class="org.eclipse.jst.j2ee.internal.plugin.LibCopyBuilder">
         </run>
      </builder>
   </extension>
   <extension
         id="EarValidator"
         name="%ear_validator_UI_"
         point="org.eclipse.wst.validation.validator">
      <validator>
        <enablement>
      		<and>
        		<test property="org.eclipse.wst.common.project.facet.core.projectFacet" value="jst.ear:1.4]"/>
			</and>
		</enablement> 
         <contentTypeBinding
               contentTypeId="org.eclipse.jst.j2ee.earDD">
         </contentTypeBinding>
         <filter
               objectClass="org.eclipse.core.resources.IFile"
               nameFilter="*.xmi">
         </filter>
         <filter
               objectClass="org.eclipse.core.resources.IFile"
               nameFilter="*.jar">
         </filter>
         <filter
               objectClass="org.eclipse.core.resources.IFile"
               nameFilter=".modulemaps">
         </filter>
         <filter
               objectClass="org.eclipse.core.resources.IFile"
               nameFilter="org.eclipse.wst.common.component">
         </filter>
         <dependentValidator
               depValValue="true">
         </dependentValidator>
         <markerId
               markerIdValue="EARValidatorMarker">
         </markerId>
         <run
               class="org.eclipse.jst.j2ee.internal.validation.UIEarValidator">
         </run>
         <helper
               class="org.eclipse.jst.j2ee.internal.validation.UIEarHelper">
         </helper>
         <runStrategy 
         	project="true">
         </runStrategy>
      </validator>
   </extension>
    <extension
         id="EARValidatorMarker"
         name="%EAR_VALIDATION_PROBLEMMARKER_NAME"
         point="org.eclipse.core.resources.markers">
      <super
            type="org.eclipse.wst.validation.problemmarker">
      </super>
      <persistent
            value="true">
      </persistent>
      <attribute
            name="owner">
      </attribute>
      <attribute
            name="validationSeverity">
      </attribute>
      <attribute
            name="targetObject">
      </attribute>
      <attribute
            name="groupName">
      </attribute>
      <attribute
            name="messageId">
      </attribute>
   </extension>
   <extension
         id="ClasspathDependencyValidator"
         name="%classpath_component_dependency_validator_UI_"
         point="org.eclipse.wst.validation.validator">
      <validator>
         <enablement>
        		<test property="org.eclipse.wst.common.project.facet.core.projectFacet" value="jst.java"/>
		 </enablement>
         <filter
               objectClass="org.eclipse.core.resources.IFile"
               nameFilter=".classpath">
         </filter>
          <filter
               objectClass="org.eclipse.core.resources.IFile"
               nameFilter="org.eclipse.wst.common.component">
         </filter>
         <filter
               objectClass="org.eclipse.core.resources.IFile"
               nameFilter=".component">
         </filter>
         <dependentValidator depValValue="true">
         </dependentValidator>
         <markerId
               markerIdValue="ClasspathDependencyValidatorMarker">
         </markerId>
         <helper
               class="org.eclipse.jst.j2ee.internal.classpathdep.ClasspathDependencyValidatorHelper">
         </helper>
         <run
               class="org.eclipse.jst.j2ee.internal.classpathdep.ClasspathDependencyValidator">
         </run>
         <runStrategy 
         	project="true">
         </runStrategy>
      </validator>
   </extension>
   <extension
         id="ClasspathDependencyValidatorMarker"
         name="%classpath_dependency_validator_problemmarker_name"
         point="org.eclipse.core.resources.markers">
      <super
            type="org.eclipse.wst.validation.problemmarker">
      </super>
      <persistent
            value="true">
      </persistent>
      <attribute
            name="owner">
      </attribute>
      <attribute
            name="validationSeverity">
      </attribute>
      <attribute
            name="targetObject">
      </attribute>
      <attribute
            name="groupName">
      </attribute>
      <attribute
            name="messageId">
      </attribute>
   </extension>
   <extension
         id="ApplicationClientValidator"
         name="%application_client_validator_UI_"
         point="org.eclipse.wst.validation.validator">
      <validator>
         <enablement>
      		<and>
        		<test property="org.eclipse.wst.common.project.facet.core.projectFacet" value="jst.java"/>
	  			<test property="org.eclipse.wst.common.project.facet.core.projectFacet" value="jst.appclient:1.4]"/>
			</and>
		 </enablement> 
         <filter
               objectClass="org.eclipse.core.resources.IFile"
               nameFilter="MANIFEST.MF">
         </filter>
         <filter
               objectClass="org.eclipse.core.resources.IFile"
               nameFilter="application-client.xml">
         </filter>
         <dependentValidator
               depValValue="true">
         </dependentValidator>
         <helper
               class="org.eclipse.jst.j2ee.internal.validation.UIApplicationClientHelper">
         </helper>
         <run
               class="org.eclipse.jst.j2ee.internal.validation.UIApplicationClientValidator">
         </run>
         <runStrategy 
         	project="true">
         </runStrategy>
      </validator>
   </extension>
<!-- ====================================================== -->
<!-- Extendable Operations                                  -->
<!-- These operation are extendable in other plugins        -->
<!-- ====================================================== -->

   <extension
         name="J2EE tools function group"
         point="org.eclipse.wst.common.frameworks.functionGroup">
      <functionGroup
            initializerClassName="org.eclipse.jst.j2ee.internal.plugin.J2EEGroupInitializer"
            name="J2EE Core tools"
            functionGroupID="org.eclipse.jst.j2ee"
            priority="0"
            description="J2EE Core tools">
      </functionGroup>
      <functionGroupPatternBinding
            functionGroupID="org.eclipse.jst.j2ee"
            pattern="org.eclipse.jst.j2ee.*">
      </functionGroupPatternBinding>
   </extension>
   <extension
         point="org.eclipse.wst.common.emfworkbench.integration.adapterFactory">
      <adapterFactory
            functionGroupID="org.eclipse.jst.j2ee"
            className="org.eclipse.jst.j2ee.common.internal.provider.CommonItemProviderAdapterFactory"
            packageURI="common.xmi"
            id="org.eclipse.jst.j2ee.common.internal.provider.CommonItemProviderAdapterFactory">
      </adapterFactory>
   </extension>
   <extension
         point="org.eclipse.wst.common.emfworkbench.integration.adapterFactory">
      <adapterFactory
            functionGroupID="org.eclipse.jst.j2ee"
            className="org.eclipse.jst.j2ee.internal.application.provider.ApplicationItemProviderAdapterFactory"
            packageURI="application.xmi"
            id="org.eclipse.jst.j2ee.application.provider.ApplicationItemProviderAdapterFactory">
      </adapterFactory>
   </extension>
   <extension
         point="org.eclipse.wst.common.emfworkbench.integration.adapterFactory">
      <adapterFactory
            functionGroupID="org.eclipse.jst.j2ee"
            className="org.eclipse.jst.j2ee.internal.provider.ClientItemProviderAdapterFactory"
            packageURI="client.xmi"
            id="org.eclipse.jst.j2ee.client.provider.ClientItemProviderAdapterFactory">
      </adapterFactory>
   </extension>
   <extension
         point="org.eclipse.wst.common.emfworkbench.integration.adapterFactory">
      <adapterFactory 
            className="org.eclipse.emf.edit.provider.resource.ResourceItemProviderAdapterFactory"
            packageURI="org.eclipse.emf.ecore.resource"
            id="org.eclipse.emf.edit.provider.resource.ResourceItemProviderAdapterFactory">
      </adapterFactory>
   </extension>
   
   
   
   
<!-- =============================================================== -->
<!-- Purpose: Define the default deployable project factory          -->
<!-- Extension point: com.ibm.etools.server.core.deployableFactories -->
<!-- =============================================================== -->
   <extension
         point="org.eclipse.wst.server.core.moduleFactories">
      <moduleFactory
            projects="true"
            class="org.eclipse.jst.j2ee.internal.deployables.J2EEDeployableFactory"
            id="org.eclipse.jst.j2ee.server">
         <moduleType
               types="jst.ear"
               versions="1.2,1.3,1.4">
         </moduleType>
         <moduleType
               types="jst.appclient"
               versions="1.2,1.3,1.4">
         </moduleType>
         <moduleType
               types="jst.web"
               versions="2.2,2.3,2.4">
         </moduleType>
         <moduleType
               types="jst.ejb"
               versions="1.1,2.0,2.1">
         </moduleType>
         <moduleType
               types="jst.connector"
               versions="1.0,1.5">
         </moduleType>
         <moduleType
               types="jst.utility"
               versions="1.0">
         </moduleType>
         <enablement>
			<or>
        		<test property="org.eclipse.wst.common.project.facet.core.projectFacet" value="jst.appclient:1.4]"/>
		  		<test property="org.eclipse.wst.common.project.facet.core.projectFacet" value="jst.ejb:2.1]"/>
		  		<test property="org.eclipse.wst.common.project.facet.core.projectFacet" value="jst.utility:1.0]"/>
	  			<test property="org.eclipse.wst.common.project.facet.core.projectFacet" value="jst.connector:1.5]"/>
	  			<test property="org.eclipse.wst.common.project.facet.core.projectFacet" value="jst.web:2.4]"/>
	  			<test property="org.eclipse.wst.common.project.facet.core.projectFacet" value="jst.ear:1.4]"/>
			</or>
		</enablement>   
      </moduleFactory>
   </extension>

<!-- =============================================================== -->
<!-- WTP Operation extendable operations						        -->
<!-- 																	 -->
<!-- =============================================================== -->


   <!--============================-->
   <!-- Builder Provider registrations-->
   <!--============================-->
   <extension
         point="org.eclipse.wst.common.frameworks.DataModelProviderExtension">
        <DataModelProvider
            class="org.eclipse.jst.j2ee.internal.common.operations.JARDependencyDataModelProvider"
            id="org.eclipse.jst.j2ee.internal.common.operations.JARDependencyDataModelProvider"/>         
        <DataModelProvider
            class="org.eclipse.jst.j2ee.application.internal.operations.UpdateManifestDataModelProvider"
            id="org.eclipse.jst.j2ee.application.internal.operations.UpdateManifestDataModelProvider"/>
        <DataModelProvider
            class="org.eclipse.jst.j2ee.internal.common.operations.NewJavaClassDataModelProvider"
            id="org.eclipse.jst.j2ee.internal.common.operations.NewJavaClassDataModelProvider"/>
	</extension>
	
	<!-- Project Facets -->
  <extension point="org.eclipse.wst.common.project.facet.core.facets">
  
    <project-facet id="jst.ear">
      <label>%EAR_FACET_LABEL</label>
      <description>%EAR_FACET_DESCRIPTION</description>
      <icon>icons/EAR.gif</icon>
      <default-version version="6.0"/>
    </project-facet>

    <project-facet-version facet="jst.ear" version="1.2">
      <constraint>
        <and>
          <conflicts group="modules"/>
          <conflicts facet="jst.java"/>
        </and>
      </constraint>
      <group-member id="modules"/>      
    </project-facet-version>

    <project-facet-version facet="jst.ear" version="1.3">
      <constraint>
        <and>
          <conflicts group="modules"/>
          <conflicts facet="jst.java"/>
        </and>
      </constraint>
      <group-member id="modules"/>      
    </project-facet-version>
    
    <project-facet-version facet="jst.ear" version="1.4">
      <constraint>
        <and>
          <conflicts group="modules"/>
          <conflicts facet="jst.java"/>
        </and>
      </constraint>
      <group-member id="modules"/>      
    </project-facet-version>
    
    <project-facet-version facet="jst.ear" version="5.0">
      <constraint>
        <and>
          <conflicts group="modules"/>
          <conflicts facet="jst.java"/>
        </and>
      </constraint>
      <group-member id="modules"/>     
    </project-facet-version>
    
    <project-facet-version facet="jst.ear" version="6.0">
      <constraint>
        <and>
          <conflicts group="modules"/>
          <conflicts facet="jst.java"/>
        </and>
      </constraint>
      <group-member id="modules"/>     
    </project-facet-version>
            
    <project-facet-version facet="jst.ear" version="7.0">
      <constraint>
        <and>
          <conflicts group="modules"/>
          <conflicts facet="jst.java"/>
        </and>
      </constraint>
      <group-member id="modules"/>     
    </project-facet-version>
    
    <project-facet-version facet="jst.ear" version="8.0">
      <constraint>
        <and>
          <conflicts group="modules"/>
          <conflicts facet="jst.java"/>
        </and>
      </constraint>
      <group-member id="modules"/>     
    </project-facet-version>    
            
    <action facet="jst.ear" type="INSTALL" id="jst.ear.install">
      <delegate class="org.eclipse.jst.j2ee.project.facet.EarFacetInstallDelegate"/>
      <config-factory class="org.eclipse.jst.j2ee.internal.earcreation.EarFacetInstallDataModelProvider"/>
    </action>
      
    <event-handler facet="jst.ear" type="POST_INSTALL">
      <delegate class="org.eclipse.jst.j2ee.project.facet.EarFacetPostInstallDelegate"/>
    </event-handler>  

    <event-handler facet="jst.ear" type="RUNTIME_CHANGED">
      <delegate class="org.eclipse.jst.j2ee.project.facet.EarFacetRuntimeHandler$RuntimeChangedDelegate"/>
	</event-handler>

    <project-facet id="jst.utility">
      <label>%UTILITY_FACET_LABEL</label>
      <description>%UTILITY_FACET_DESCRIPTION</description>
      <property name="hide.version" value="true"/>
    </project-facet>

    <project-facet-version facet="jst.utility" version="1.0">
      <action type="install">
        <delegate class="org.eclipse.jst.j2ee.project.facet.UtilityFacetInstallDelegate"/>
        <config-factory class="org.eclipse.jst.j2ee.project.facet.UtilityFacetInstallDataModelProvider"/>
      </action>
      <action type="uninstall">
        <delegate class="org.eclipse.jst.j2ee.project.facet.UtilityFacetUnInstallDelegate"/>
      </action>
      <event-handler type="RUNTIME_CHANGED">
        <delegate class="org.eclipse.jst.j2ee.project.facet.J2EEFacetRuntimeChangedDelegate"/>
      </event-handler>
	<event-handler type="POST_INSTALL" facet="jst.ear" version="[1.2-1.4]">
	  <delegate class="org.eclipse.jst.j2ee.project.facet.UtilityFacetPostInstallDelegate"/>
	</event-handler>  
	      
      <constraint>
        <and>
          <requires facet="jst.java" version="[1.3"/>
          <conflicts group="modules"/>
        </and>
      </constraint>
      <group-member id="modules"/>      
    </project-facet-version>
    
    
    <project-facet id="jst.appclient">
      <label>%APPCLIENT_FACET_LABEL</label>
      <description>%APPCLIENT_FACET_DESCRIPTION</description>
      <icon>icons/ear.gif</icon>
      <default-version version="6.0"/>
    </project-facet>

    <project-facet-version facet="jst.appclient" version="1.2">
      <constraint>
        <and>
          <requires facet="jst.java" version="[1.3"/>
          <conflicts group="modules"/>
        </and>
      </constraint>
      <group-member id="modules"/>      
    </project-facet-version>
    
    <project-facet-version facet="jst.appclient" version="1.3">
      <constraint>
        <and>
          <requires facet="jst.java" version="[1.3"/>
          <conflicts group="modules"/>
        </and>
      </constraint>
      <group-member id="modules"/>      
    </project-facet-version>
    
    <project-facet-version facet="jst.appclient" version="1.4">
      <constraint>
        <and>
          <requires facet="jst.java" version="[1.3"/>
          <conflicts group="modules"/>
        </and>
      </constraint>
      <group-member id="modules"/>      
    </project-facet-version>
    
    <project-facet-version facet="jst.appclient" version="5.0">
      <constraint>
        <and>
          <requires facet="jst.java" version="[1.5"/>
          <conflicts group="modules"/>
        </and>
      </constraint>
      <group-member id="modules"/>     
    </project-facet-version>
    
    <project-facet-version facet="jst.appclient" version="6.0">
      <constraint>
        <and>
          <requires facet="jst.java" version="[1.6"/>
          <conflicts group="modules"/>
        </and>
      </constraint>
      <group-member id="modules"/>     
    </project-facet-version>
            
    <project-facet-version facet="jst.appclient" version="7.0">
      <constraint>
        <and>
          <requires facet="jst.java" version="[1.7"/>
          <conflicts group="modules"/>
        </and>
      </constraint>
      <group-member id="modules"/>     
    </project-facet-version>

    <project-facet-version facet="jst.appclient" version="8.0">
      <constraint>
        <and>
          <requires facet="jst.java" version="[1.8"/>
          <conflicts group="modules"/>
        </and>
      </constraint>
      <group-member id="modules"/>     
    </project-facet-version>
                
    <action type="install" facet="jst.appclient" id="jst.appclient.install">
      <delegate class="org.eclipse.jst.j2ee.project.facet.AppClientFacetInstallDelegate"/>
      <config-factory class="org.eclipse.jst.j2ee.project.facet.AppClientFacetInstallDataModelProvider"/>
    </action>
	  
    <event-handler type="POST_INSTALL" facet="jst.appclient">
      <delegate class="org.eclipse.jst.j2ee.project.facet.AppClientFacetPostInstallDelegate"/>
    </event-handler>
        
    <event-handler type="RUNTIME_CHANGED" facet="jst.appclient">
      <delegate class="org.eclipse.jst.j2ee.project.facet.J2EEFacetRuntimeChangedDelegate"/>
    </event-handler>
	
    <template id="template.jst.ear">
      <label>%EAR_FACET_TEMPLATE</label>
      <fixed facet="jst.ear"/>
    </template>
    
    <template id="template.jst.utility">
      <label>%UTILITY_FACET_TEMPLATE</label>
      <fixed facet="jst.java"/>
      <fixed facet="jst.utility"/>
    </template>

    <template id="template.jst.appclient">
      <label>%APPCLIENT_FACET_TEMPLATE</label>
      <fixed facet="jst.java"/>
      <fixed facet="jst.appclient"/>
    </template>
    <action
          facet="jst.ear"
          id="jst.ear.versionchange.legacy"
          type="VERSION_CHANGE"
          version="[1.4-8.0]">
       <delegate
             class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
       </delegate>
       <property name="from.versions" value="1.4"/>
    </action>
    <action
          facet="jst.ear"
          id="jst.ear.versionchange.ee5"
          type="VERSION_CHANGE"
          version="[5.0-8.0]">
       <delegate
             class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
       </delegate>
       <property name="from.versions" value="5.0"/>
    </action>
    <action
          facet="jst.ear"
          id="jst.ear.versionchange.ee6"
          type="VERSION_CHANGE"
          version="[6.0-8.0]">
       <delegate
             class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
       </delegate>
       <property name="from.versions" value="6.0"/>
    </action>
    <action
          facet="jst.ear"
          id="jst.ear.versionchange.ee7"
          type="VERSION_CHANGE"
          version="[7.0-8.0]">
       <delegate
             class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
       </delegate>
       <property name="from.versions" value="7.0"/>
    </action>
    <action
          facet="jst.appclient"
          id="jst.appclient.versionchange.legacy"
          type="VERSION_CHANGE"
          version="[1.4-8.0]">
       <delegate
             class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
       </delegate>
       <property name="from.versions" value="1.4"/>
    </action>
    <action
          facet="jst.appclient"
          id="jst.appclient.versionchange.ee5"
          type="VERSION_CHANGE"
          version="[5.0-8.0]">
       <delegate
             class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
       </delegate>
       <property name="from.versions" value="5.0"/>
    </action>
     <action
          facet="jst.appclient"
          id="jst.appclient.versionchange.ee6"
          type="VERSION_CHANGE"
          version="[6.0-8.0]">
       <delegate
             class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
       </delegate>
       <property name="from.versions" value="6.0"/> 
    </action>
    <action
          facet="jst.appclient"
          id="jst.appclient.versionchange.ee7"
          type="VERSION_CHANGE"
          version="[7.0-8.0]">
       <delegate
             class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
       </delegate>
       <property name="from.versions" value="7.0"/> 
    </action>
    <action
          facet="jst.ejb"
          id="jst.ejb.versionchange.legacy"
          type="VERSION_CHANGE"
          version="[2.1-3.2]">
       <delegate
             class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
       </delegate>
       <property name="from.versions" value="2.1"/>
    </action>
    <action
          facet="jst.ejb"
          id="jst.ejb.versionchange.ee5"
          type="VERSION_CHANGE"
          version="[3.0-3.2]">
       <delegate
             class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
       </delegate>
       <property name="from.versions" value="3.0"/>
    </action>
    <action
          facet="jst.ejb"
          id="jst.ejb.versionchange.ee6"
          type="VERSION_CHANGE"
          version="[3.1-3.2]">
       <delegate
             class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
       </delegate>
       <property name="from.versions" value="3.1"/>
    </action>
    <action
          facet="jst.web"
          id="jst.web.versionchange.legacy"
          type="VERSION_CHANGE"
          version="[2.4-4.0]">
       <delegate
             class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
       </delegate>
       <property name="from.versions" value="2.4"/>
    </action>
    <action
          facet="jst.web"
          id="jst.web.versionchange.ee5"
          type="VERSION_CHANGE"
          version="[2.5-4.0]">
       <delegate
             class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
       </delegate>
       <property name="from.versions" value="2.5"/>
    </action>
    <action
          facet="jst.web"
          id="jst.web.versionchange.ee6"
          type="VERSION_CHANGE"
          version="[3.0-4.0]">
       <delegate
             class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
       </delegate>
       <property name="from.versions" value="3.0"/>
    </action>
    <action
          facet="jst.web"
          id="jst.web.versionchange.ee7"
          type="VERSION_CHANGE"
          version="[3.1-4.0]">
       <delegate
             class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
       </delegate>
       <property name="from.versions" value="3.1"/>
    </action>
    <action
          facet="jst.webfragment"
          id="jst.webfragment.versionchange.ee6"
          type="VERSION_CHANGE"
          version="[3.0">
       <delegate
             class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
       </delegate>
       <property name="from.versions" value="3.0"/>
    </action>
    <action
          facet="jst.webfragment"
          id="jst.webfragment.versionchange.ee7"
          type="VERSION_CHANGE"
          version="[3.1-4.0]">
       <delegate
             class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
       </delegate>
       <property name="from.versions" value="3.1"/>
    </action>    
    <action
          facet="jst.connector"
          id="jst.connector.versionchange.ee5"
          type="VERSION_CHANGE"
          version="[1.5-1.7]">
       <delegate
             class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
       </delegate>
       <property name="from.versions" value="1.5"/>
    </action>
    <action
          facet="jst.connector"
          id="jst.connector.versionchange.ee6"
          type="VERSION_CHANGE"
          version="[1.6-1.7]">
       <delegate
             class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
       </delegate>
       <property name="from.versions" value="1.6"/>
    </action>     
  </extension>
  
  <extension point="org.eclipse.wst.common.project.facet.core.validators">
    <validator class="org.eclipse.jst.j2ee.project.facet.EarFacetValidator"/>
  </extension>    

  <extension 
    point="org.eclipse.core.resources.markers"
    id="differentRuntimesDetected"
    name="%differentRuntimesDetectedMarkerName">
    <super type="org.eclipse.wst.common.project.facet.core.validation.marker"/>
    <attribute name="moduleProject"/>
    <attribute name="runtime1"/>
    <attribute name="runtime2"/>
    <persistent value="true"/>
  </extension>
  
  <extension
       point="org.eclipse.wst.validation.validationHelper">
    <validationHelper
    	id="org.eclipse.jst.common.componentcore.util.ProjectValidationHelper"
    	helperClass="org.eclipse.jst.j2ee.internal.validation.ProjectValidationHelper">
    </validationHelper>	   
 </extension>
  
  <extension point="org.eclipse.jdt.core.classpathContainerInitializer">
    <classpathContainerInitializer
      class="org.eclipse.jst.j2ee.internal.common.classpath.J2EEComponentClasspathInitializer"
      id="org.eclipse.jst.j2ee.internal.module.container"/>
  </extension>
  
   <!--
	  Operation extension that updates the context-root entries in application.xml
  -->
  <extension
     point="org.eclipse.wst.common.frameworks.OperationExtension"
     id="org.eclipse.jst.j2ee.application.internal.operations.UpdateContextRoot">
   <operationExtension
      id="org.eclipse.wst.common.componentcore.internal.operation.ServerContextRootUpdateOperation"
      preOperationClass="org.eclipse.jst.j2ee.application.internal.operations.ComputeEARsForContextRootUpdateOp"/>
   <operationExtension
      id="org.eclipse.wst.common.componentcore.internal.operation.ServerContextRootUpdateOperation"
      postOperationClass="org.eclipse.jst.j2ee.application.internal.operations.UpdateModuleContextRootInEAROp"/>
  </extension>


   <extension
         point="org.eclipse.wst.common.modulecore.componentimpl">
      <componentimpl
            typeID="jst.ear"
            class="org.eclipse.jst.j2ee.componentcore.util.EARVirtualComponent">
      </componentimpl>
   </extension>

   <extension
         point="org.eclipse.wst.common.modulecore.componentimpl">
      <componentimpl
            typeID="jst.utility"
            class="org.eclipse.jst.j2ee.componentcore.J2EEModuleVirtualComponent">
      </componentimpl>
   </extension>
  
   <extension
         point="org.eclipse.wst.common.modulecore.componentimpl">
      <componentimpl
            typeID="jst.web"
            class="org.eclipse.jst.j2ee.componentcore.J2EEModuleVirtualComponent">
      </componentimpl>
   </extension>

   <extension
         point="org.eclipse.wst.common.modulecore.componentimpl">
      <componentimpl
            typeID="jst.connector"
            class="org.eclipse.jst.j2ee.componentcore.J2EEModuleVirtualComponent">
      </componentimpl>
   </extension>

   <extension
         point="org.eclipse.wst.common.modulecore.componentimpl">
      <componentimpl
            typeID="jst.ejb"
            class="org.eclipse.jst.j2ee.componentcore.J2EEModuleVirtualComponent">
      </componentimpl>
   </extension>

   <extension
         point="org.eclipse.wst.common.modulecore.componentimpl">
      <componentimpl
            typeID="jst.appclient"
            class="org.eclipse.jst.j2ee.componentcore.J2EEModuleVirtualComponent">
      </componentimpl>
   </extension>

   <extension
         point="org.eclipse.wst.common.modulecore.componentimpl">
      <componentimpl
            typeID="jst.webfragment"
            class="org.eclipse.jst.j2ee.componentcore.J2EEModuleVirtualComponent">
      </componentimpl>
   </extension>
   
   <extension
         point="org.eclipse.core.contenttype.contentTypes">
      <content-type
            file-names="ejb-jar.xml"
            id="ejbDD"
            base-type="org.eclipse.core.runtime.xml"
            name="%ejbEditorContentType"
            priority="high">
         <describer
               class="org.eclipse.jst.j2ee.contenttype.J2EEContentDescriber">
         </describer>
      </content-type>
  	</extension>   
  	
  	 <extension
         point="org.eclipse.core.contenttype.contentTypes">
      <content-type
            file-names="web.xml"
            id="webDD"
            base-type="org.eclipse.core.runtime.xml"
            name="%webEditorContentType"
            priority="high">
         <describer
               class="org.eclipse.jst.j2ee.contenttype.J2EEContentDescriber">
         </describer>
      </content-type>
  	</extension>   
  	
  	 <extension
         point="org.eclipse.core.contenttype.contentTypes">
      <content-type
            file-names="application.xml"
            id="earDD"
            base-type="org.eclipse.core.runtime.xml"
            name="%earEditorContentType"
            priority="high">
         <describer
               class="org.eclipse.jst.j2ee.contenttype.J2EEContentDescriber">
         </describer>
      </content-type>
  	</extension>   
  	
  	
  	 <extension
         point="org.eclipse.core.contenttype.contentTypes">
      <content-type
            file-names="application-client.xml"
            id="appclientDD"
            base-type="org.eclipse.core.runtime.xml"
            name="%appclientEditorContentType"
            priority="high">
         <describer
               class="org.eclipse.jst.j2ee.contenttype.J2EEContentDescriber">
         </describer>
      </content-type>
  	</extension>   
  	
  	<extension
         point="org.eclipse.core.contenttype.contentTypes">
      <content-type
            file-names="ra.xml"
            id="connectorDD"
            base-type="org.eclipse.core.runtime.xml"
            name="%ConnectorContentType"
            priority="high">
         <describer
               class="org.eclipse.jst.j2ee.contenttype.J2EEContentDescriber">
         </describer>
      </content-type>
  	</extension>   
  
  <extension point="org.eclipse.jst.j2ee.classpathdep">
  	<filteredClasspathContainer containerID="org.eclipse.jst.j2ee.internal.module.container"/>
  	<filteredClasspathContainer containerID="org.eclipse.jst.j2ee.internal.web.container"/>
  	<filteredClasspathContainer containerID="org.eclipse.jst.server.core.container"/>
  	<filteredClasspathContainer containerID="org.eclipse.jdt.launching.JRE_CONTAINER"/>
  </extension>
  <extension
        point="org.eclipse.jst.j2ee.J2EEModelProvider">
        <provider>
        	<modelProvider factoryClass="org.eclipse.jst.j2ee.componentcore.util.EARArtifactEdit"/>	
      		<facet id="jst.ear" versions="1.2,1.3,1.4"/>
      	</provider>
  </extension>
  <extension
        point="org.eclipse.jst.j2ee.J2EEModelProvider">
        <provider>
        	<modelProvider factoryClass="org.eclipse.jst.j2ee.applicationclient.componentcore.util.AppClientArtifactEdit"/>	
      		<facet id="jst.appclient" versions="1.2,1.3,1.4"/>
      	</provider>
  </extension>

  <extension point="org.eclipse.core.expressions.propertyTesters">
    <propertyTester
      id="org.eclipse.jst.j2ee.common.internal.FacetedProjectPropertyTester"
      type="org.eclipse.jdt.core.ICompilationUnit"
      namespace="org.eclipse.jst.j2ee.common"
      properties="projectFacet"
      class="org.eclipse.jst.j2ee.internal.common.FacetedProjectPropertyTester">
    </propertyTester>
    <propertyTester
      id="org.eclipse.jst.j2ee.internal.common.WtpPreferencePropertyTester"
      type="org.eclipse.core.resources.IProject"
      namespace="org.eclipse.jst.j2ee"
      properties="preferenceId"
      class="org.eclipse.jst.j2ee.internal.common.J2EEPreferencePropertyTester">
    </propertyTester>
	<propertyTester
  		id="org.eclipse.jst.j2ee.internal.provider.FacetedProjectPropertyTester"
  		type="org.eclipse.jst.j2ee.internal.provider.J2EEItemProvider"
  		namespace="org.eclipse.jst.j2ee.provider"
  		properties="projectFacet"
  		class="org.eclipse.jst.j2ee.internal.provider.FacetedProjectPropertyTester">
	</propertyTester>
  </extension>
  
  <!--
    *****************************
    * WTP User Library Provider *
    *****************************
  -->
    
  <extension point="org.eclipse.jst.common.project.facet.core.libraryProviders">
    <provider id="wtp-user-library-provider" abstract="true" extends="user-library-provider">
      <action type="INSTALL">
        <config class="org.eclipse.jst.j2ee.internal.common.classpath.WtpUserLibraryProviderInstallOperationConfig"/>
        <operation class="org.eclipse.jst.j2ee.internal.common.classpath.WtpUserLibraryProviderInstallOperation"/>
      </action>
    </provider>
  </extension>
  
  <!--
    *************************************
    * WTP OSGi Bundles Library Provider *
    *************************************
  -->
    
  <extension point="org.eclipse.jst.common.project.facet.core.libraryProviders">
    <provider id="wtp-osgi-bundles-library-provider" abstract="true" extends="osgi-bundles-library-provider">
      <action type="INSTALL">
        <config class="org.eclipse.jst.j2ee.internal.common.classpath.WtpOsgiBundlesLibraryProviderInstallOperationConfig"/>
        <operation class="org.eclipse.jst.j2ee.internal.common.classpath.WtpOsgiBundlesLibraryProviderInstallOperation"/>
      </action>
    </provider>
  </extension>

  <extension point="org.eclipse.ltk.core.refactoring.deleteParticipants">
     <deleteParticipant
           class="org.eclipse.jst.javaee.ltk.core.participant.JavaEERefactoringParticipant"
           id="JavaEERefactoringParticipant"
           name="JavaEERefactoringParticipant">
        <enablement></enablement>
     </deleteParticipant>
     <deleteParticipant
           class="org.eclipse.jst.javaee.ltk.core.participant.JavaEEServerRefRefactorParticipant"
           id="JavaEEServerRefParticipant"
           name="JavaEEServerRefParticipant">
        <enablement></enablement>
     </deleteParticipant>
  </extension>
  
   <!-- initialize Java EE preferences -->
	<extension point="org.eclipse.core.runtime.preferences">
		<initializer
			class="org.eclipse.jst.j2ee.internal.plugin.JavaEEPreferencesInitializer" />
	</extension>
 <extension
       point="org.eclipse.wst.common.modulecore.referenceResolver">
    <resolver
          class="org.eclipse.jst.j2ee.internal.modulecore.util.ClasspathDependencyResolver"
          id="org.eclipse.jst.j2ee.componentcore.util.ClasspathDependencyResolver"
          weight="5">
    </resolver>
 </extension>
 <extension
       point="org.eclipse.jst.common.frameworks.JavaComponentDiscerner">
    <discerner
          class="org.eclipse.jst.j2ee.internal.modulecore.util.JEEManifestDiscerner">
    </discerner>
 </extension>
 <extension
       point="org.eclipse.wst.common.modulecore.flattenParticipantProvider">
    <flattenParticipantProvider
          class="org.eclipse.jst.j2ee.internal.deployables.JEEFlattenParticipantProvider"
          weight="10">
    </flattenParticipantProvider>
 </extension>
 <extension
       point="org.eclipse.wst.common.modulecore.heirarchyFlattenParticipant">
    <heirarchyParticipant
          class="org.eclipse.jst.j2ee.internal.common.exportmodel.JEEHeirarchyExportParticipant">
    </heirarchyParticipant>
 </extension>
</plugin>
