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

     <extension
         point="org.eclipse.emf.ecore.generated_package">
      <package
            uri="componentcore.xmi"
            class="org.eclipse.wst.common.componentcore.internal.ComponentcorePackage">
      </package>
   </extension>   
   
   <!--============================-->
   <!-- Module Core Project Nature Contributions-->
   <!--============================-->
   <extension
         id="ModuleCoreNature"
         name="%Nature.name"
         point="org.eclipse.core.resources.natures">
      <runtime>
         <run
               class="org.eclipse.wst.common.componentcore.ModuleCoreNature">
         </run>
      </runtime>
   </extension>
   <extension
         point="org.eclipse.wst.common.emfworkbench.integration.editModel">
      <editModel
            editModelID="org.eclipse.wst.modulecore.structuralModel"
            factoryClass="org.eclipse.wst.common.componentcore.internal.impl.ModuleStructuralModelFactory">
         <editModelResource
               autoload="false"
               URI=".settings/org.eclipse.wst.common.component"/>
      </editModel> 
   </extension>
	
	<extension point="org.eclipse.core.contenttype.contentTypes">
 			<file-association
				content-type="org.eclipse.core.runtime.xml"
				file-names="org.eclipse.wst.common.component"/>
			<file-association
				content-type="org.eclipse.core.runtime.xml"
				file-names=".component"/>
			<file-association
				content-type="org.eclipse.core.runtime.xml"
				file-names=".wtpmodules"/>
	</extension>

	<extension point="org.eclipse.team.core.ignore">
		<ignore
        enabled="true"
        pattern=".deployables"/>
	</extension>
	<extension-point id="ComponentProjectMigrator" name="ComponentProjectMigrator" schema="schema/ComponentProjectMigrator.exsd"/>
	<extension-point id="artifactedit" name="Component Artifact Edit" schema="schema/artifactedit.exsd"/>
    <extension-point id="componentimpl" name="componentimpl" schema="schema/componentimpl.exsd"/>
	<extension-point id="resourceFactories" name="Resource Factory Association (Internal)" schema="schema/resourceFactories.exsd"/>
 <extension-point id="referenceResolver" name="referenceResolver" schema="schema/referenceResolver.exsd"/>
	
	<!-- Contribute a URIResolverExtension for flexible projects -->
	<extension point="org.eclipse.wst.common.uriresolver.resolverExtensions">
      <resolverExtension
            stage="prenormalization"
            class="org.eclipse.wst.common.componentcore.internal.util.ComponentResolver">
            <projectNature value="org.eclipse.wst.common.modulecore.ModuleCoreNature" />
			<projectNature value="org.eclipse.wst.web.StaticWebNature"/>
      </resolverExtension>
   </extension>
   
  <extension point="org.eclipse.core.runtime.adapters">
    <factory 
      class="org.eclipse.wst.common.componentcore.datamodel.FacetDataModelConfigAdapter$Factory" 
      adaptableType="org.eclipse.wst.common.frameworks.datamodel.IDataModel">
      <adapter type="org.eclipse.wst.common.project.facet.core.ActionConfig"/>
    </factory>
  </extension>
  
   <!-- Register the nature id with the EMFNature -->
   <extension
         point="org.eclipse.jem.util.nature_registration">
      <nature
            id="org.eclipse.wst.common.modulecore.ModuleCoreNature">
      </nature>
   </extension> 
  
   
</plugin>
