<?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>
            
    <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>
            
    <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-7.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-7.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-7.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.legacy"
          type="VERSION_CHANGE"
          version="[1.4-7.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-7.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-7.0]">
       <delegate
             class="org.eclipse.jst.j2ee.project.facet.J2EEFacetVersionChangeDelegate">
       </delegate>
       <property name="from.versions" value="6.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-3.1]">
       <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-3.1]">
       <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-3.1]">
       <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.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.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>
