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

<plugin>

	<!-- ***** extension points ***** -->

	<extension-point
		id="jpaPlatforms"
		name="%JPA_PLATFORM"
		schema="schema/jpaPlatforms.exsd"
	/>
	
	
	<!-- ***** Eclipse core extensions ***** -->
	
	<extension
		point="org.eclipse.core.contenttype.contentTypes">
		
		<!-- "abstract" content type to be extended by all JPA XML file content types -->
		<content-type
			id="org.eclipse.jpt.core.content.baseJpaContent"
			name="%BASE_JPA_CONTENT"
			base-type="org.eclipse.core.runtime.xml"
			describer="org.eclipse.jpt.core.internal.resource.IndeterminateContentDescriber">
		</content-type>
		
		<!-- persistence.xml content type -->
  		<content-type
			id="org.eclipse.jpt.core.content.persistence"
			name="%PERSISTENCE_XML_CONTENT"
			base-type="org.eclipse.jpt.core.content.baseJpaContent"
			file-names="persistence.xml">
			<describer
				class="org.eclipse.core.runtime.content.XMLRootElementContentDescriber2">
				<parameter 
					name="element" 
					value="{http://java.sun.com/xml/ns/persistence}persistence"/>
			</describer>
		</content-type>
		
		<!-- "abstract" mapping file content type -->
		<content-type
			id="org.eclipse.jpt.core.content.mappingFile"
			name="%MAPPING_FILE_CONTENT"
			base-type="org.eclipse.jpt.core.content.baseJpaContent">
		</content-type>
		
		<!-- orm.xml content type -->
		<content-type
			id="org.eclipse.jpt.core.content.orm"
			name="%ORM_XML_CONTENT"
			base-type="org.eclipse.jpt.core.content.mappingFile">
			<describer
				class="org.eclipse.core.runtime.content.XMLRootElementContentDescriber2">
				<parameter 
					name="element" 
					value="{http://java.sun.com/xml/ns/persistence/orm}entity-mappings"/>
			</describer>
		</content-type>
		
		<!-- JAR content type -->
		<content-type
			id="org.eclipse.jpt.core.content.jar"
			name="%JAR_CONTENT"
			file-extensions="jar, zip">
			<describer
				class="org.eclipse.core.runtime.content.BinarySignatureDescriber">
				<parameter name="signature" value="50 4B 03 04"/>
			</describer>
		</content-type>
		
	</extension>
	
	
	<extension 
		point="org.eclipse.core.expressions.propertyTesters">
		
		<propertyTester
			id="org.eclipse.jpt.core.propertyTester.persistentAttribute"
			type="org.eclipse.jpt.core.context.PersistentAttribute"
			namespace="org.eclipse.jpt.core"
			properties="isMapped, isVirtual"
			class="org.eclipse.jpt.core.internal.context.PersistentAttributePropertyTester"/>
		
		<propertyTester
			id="org.eclipse.jpt.core.propertyTester.platformResource"
			type="org.eclipse.core.resources.IResource"
			namespace="org.eclipse.jpt.core"
			properties="jpaPlatform"
			class="org.eclipse.jpt.core.internal.JpaPlatformTester"/>
		
		<propertyTester
			id="org.eclipse.jpt.core.propertyTester.javaElement"
			type="org.eclipse.jdt.core.IJavaElement"
			namespace="org.eclipse.jpt.core"
			properties="jpaPlatform"
			class="org.eclipse.jpt.core.internal.JpaPlatformTester"/>
		
		<propertyTester
			id="org.eclipse.jpt.core.propertyTester.xmlResource"
			type="org.eclipse.jpt.core.resource.xml.JpaXmlResource"
			namespace="org.eclipse.jpt.core"
			properties="isLatestSupportedVersion"
			class="org.eclipse.jpt.core.internal.resource.xml.JpaXmlResourcePropertyTester"/>
		
		<propertyTester
			id="org.eclipse.jpt.core.propertyTester.xmlFile"
			type="org.eclipse.jpt.core.context.XmlFile"
			namespace="org.eclipse.jpt.core"
			properties="isLatestSupportedVersion"
			class="org.eclipse.jpt.core.internal.resource.xml.JpaXmlResourcePropertyTester"/>
		
	</extension>
	
	
	<extension
		point="org.eclipse.core.runtime.adapters">
		
		<factory
			class="org.eclipse.jpt.core.internal.ProjectAdapterFactory"
			adaptableType="org.eclipse.core.resources.IProject">
			<adapter type="org.eclipse.jpt.core.JpaProject"/>
		</factory>
		
		<factory
			class="org.eclipse.jpt.core.internal.ProjectAdapterFactory"
			adaptableType="org.eclipse.jdt.core.IJavaProject">
			<adapter type="org.eclipse.jpt.core.JpaProject"/>
		</factory>
		
		<factory
			class="org.eclipse.jpt.core.internal.ResourceAdapterFactory"
			adaptableType="org.eclipse.core.resources.IResource">
			<adapter type="org.eclipse.jpt.core.IResourcePart"/>
		</factory>
		
		<factory
			class="org.eclipse.jpt.core.internal.resource.xml.JpaXmlResourceAdapterFactory"
			adaptableType="org.eclipse.core.resources.IFile">
			<adapter type="org.eclipse.jpt.core.resource.xml.JpaXmlResource"/>
		</factory>
		
	</extension>
	
	
	<extension
		point="org.eclipse.core.runtime.preferences">
		
		<initializer 
			class="org.eclipse.jpt.core.internal.prefs.JpaPreferenceInitializer"/>
		
	</extension>
	
	
	<!-- ***** JPT extensions (eat our own dogfood) ***** -->

	<extension
		point="org.eclipse.jpt.core.jpaPlatforms">
		
		<jpaPlatform
			id="generic"
			label="%GENERIC_1_0_PLATFORM_LABEL"
			factoryClass="org.eclipse.jpt.core.internal.GenericJpaPlatformFactory"
			jpaFacetVersion="1.0"
			default="false">
		</jpaPlatform>
			
	  <jpaPlatform
	        id="generic2_0"
	        label="%GENERIC_2_0_PLATFORM_LABEL"
	        factoryClass="org.eclipse.jpt.core.internal.jpa2.Generic2_0JpaPlatformFactory"
	        jpaFacetVersion="2.0"
	        default="false">
	  </jpaPlatform>
		
	</extension>
	
	
	<!--
	******************************************
	* Library Provider Framework Integration *
	******************************************
	-->
	
	<extension 
		point="org.eclipse.jst.common.project.facet.core.libraryProviders">
		
		<provider 
			id="jpa-legacy-library-provider" 
			extends="legacy-library-provider"
			hidden="true">
			<action type="UNINSTALL">
				<operation
					class="org.eclipse.jpt.core.internal.facet.LegacyJpaLibraryProviderInstallOperation"/>
			</action>
		</provider>		
		
		<provider 
			id="jpa-no-op-library-provider" 
			extends="no-op-library-provider">
			<param name="message" value="%NO_OP_LIBRARY_PROVIDER_WARNING"/>
			<param name="warning" value="%NO_OP_LIBRARY_PROVIDER_MESSAGE"/>
			<enablement>
				<with variable="requestingProjectFacet">
					<test property="org.eclipse.wst.common.project.facet.core.projectFacet" value="jpt.jpa" forcePluginActivation="true"/>
				</with>
			</enablement>
		</provider>
		
		<provider 
			id="jpa-generic-user-library-provider" 
			extends="wtp-user-library-provider">
			<param name="validator" value="org.eclipse.jst.common.project.facet.core.libprov.user.KeyClassesValidator"/>
			<param name="validator.param.0" value="javax.persistence.Entity"/>
			<enablement>
				<and>
					<with variable="requestingProjectFacet">
						<test property="org.eclipse.wst.common.project.facet.core.projectFacet" value="jpt.jpa" forcePluginActivation="true"/>
					</with>
					<with variable="jpaPlatform">
						<or>
							<equals value="generic"/>
							<equals value="generic2_0"/>
						</or>
					</with>
				</and>
			</enablement>
		</provider>
		
	</extension>
	
	
	<extension
		point="org.eclipse.jst.common.project.facet.core.legacyLibraryProviderDetectors">
		
		<detector
			class="org.eclipse.jpt.core.internal.facet.LegacyJpaLibraryProviderDetector"/>
		
	</extension>
	
	
	<extension point="org.eclipse.jst.common.project.facet.core.libraryProviders">
		
		<provider id="eclipselink-102-osgi-bundles-library-provider" extends="wtp-osgi-bundles-library-provider">
			<label>EclipseLink 1.0.x</label>
				<param name="container.label" value="EclipseLink 1.0.x"/>
				<param name="bundle.0" value="javax.persistence:[1.0.0, 2.0.0)"/>
				<param name="bundle.1" value="org.eclipse.persistence.core:[1.0.0, 1.1.0)"/>
				<param name="bundle.2" value="org.eclipse.persistence.jpa:[1.0.0, 1.1.0)"/>
				<param name="bundle.3" value="org.eclipse.persistence.asm:[1.0.0, 1.1.0)"/>
				<param name="bundle.4" value="org.eclipse.persistence.antlr:[1.0.0, 1.1.0)"/>
			<enablement>
				<with variable="requestingProjectFacet">
					<test property="org.eclipse.wst.common.project.facet.core.projectFacet" value="jpt.jpa" forcePluginActivation="true"/>
				</with>
			</enablement>
		</provider>
		
		<provider id="eclipselink-110-osgi-bundles-library-provider" extends="wtp-osgi-bundles-library-provider">
			<label>EclipseLink 1.1.x</label>
				<param name="container.label" value="EclipseLink 1.1.x"/>
				<param name="bundle.0" value="javax.persistence:[1.99.0, 2.1.0)"/>
				<param name="bundle.1" value="org.eclipse.persistence.core:[1.1.0, 1.2.0)"/>
				<param name="bundle.2" value="org.eclipse.persistence.jpa:[1.1.0, 1.2.0)"/>
				<param name="bundle.3" value="org.eclipse.persistence.asm:[1.1.0, 1.2.0)"/>
				<param name="bundle.4" value="org.eclipse.persistence.antlr:[1.1.0, 1.2.0)"/>
			<enablement>
				<with variable="requestingProjectFacet">
					<test property="org.eclipse.wst.common.project.facet.core.projectFacet" value="jpt.jpa" forcePluginActivation="true"/>
				</with>
			</enablement>
		</provider>
		
		<provider id="eclipselink-120-osgi-bundles-library-provider" extends="wtp-osgi-bundles-library-provider">
			<label>EclipseLink 1.2.x</label>
				<param name="container.label" value="EclipseLink 1.2.x"/>
				<param name="bundle.0" value="javax.persistence:[1.99.0, 2.1.0)"/>
				<param name="bundle.1" value="org.eclipse.persistence.core:[1.2.0, 1.3.0)"/>
				<param name="bundle.2" value="org.eclipse.persistence.jpa:[1.2.0, 1.3.0)"/>
				<param name="bundle.3" value="org.eclipse.persistence.asm:[1.2.0, 1.3.0)"/>
				<param name="bundle.4" value="org.eclipse.persistence.antlr:[1.2.0, 1.3.0)"/>
			<enablement>
				<with variable="requestingProjectFacet">
					<test property="org.eclipse.wst.common.project.facet.core.projectFacet" value="jpt.jpa" forcePluginActivation="true"/>
				</with>
			</enablement>
		</provider>
		
		<provider id="eclipselink-200-osgi-bundles-library-provider" extends="wtp-osgi-bundles-library-provider">
			<label>EclipseLink 2.0.x</label>
				<param name="container.label" value="EclipseLink 2.0.x"/>
				<param name="bundle.0" value="javax.persistence:[2.0.0, 2.1.0)"/>
				<param name="bundle.1" value="org.eclipse.persistence.core:[2.0.0, 2.1.0)"/>
				<param name="bundle.2" value="org.eclipse.persistence.jpa:[2.0.0, 2.1.0)"/>
				<param name="bundle.3" value="org.eclipse.persistence.asm:[2.0.0, 2.1.0)"/>
				<param name="bundle.4" value="org.eclipse.persistence.antlr:[2.0.0, 2.1.0)"/>
			<enablement>
				<with variable="requestingProjectFacet">
					<test property="org.eclipse.wst.common.project.facet.core.projectFacet" value="jpt.jpa" forcePluginActivation="true"/>
				</with>
			</enablement>
		</provider>
		
		<provider id="eclipselink-210-osgi-bundles-library-provider" extends="wtp-osgi-bundles-library-provider">
			<label>EclipseLink 2.1.x</label>
				<param name="container.label" value="EclipseLink 2.1.x"/>
				<param name="bundle.0" value="javax.persistence:[2.0.0, 2.1.0)"/>
				<param name="bundle.1" value="org.eclipse.persistence.core:[2.1.0, 2.2.0)"/>
				<param name="bundle.2" value="org.eclipse.persistence.jpa:[2.1.0, 2.2.0)"/>
				<param name="bundle.3" value="org.eclipse.persistence.asm:[2.1.0, 2.2.0)"/>
				<param name="bundle.4" value="org.eclipse.persistence.antlr:[2.1.0, 2.2.0)"/>
			<enablement>
				<with variable="requestingProjectFacet">
					<test property="org.eclipse.wst.common.project.facet.core.projectFacet" value="jpt.jpa" forcePluginActivation="true"/>
				</with>
			</enablement>
		</provider>
		
	</extension>
	
	
	<!-- ***** WTP extensions ***** -->

	<extension
		point="org.eclipse.wst.common.modulecore.resourceFactories">
		
		<resourceFactory
			class="org.eclipse.jpt.core.resource.persistence.PersistenceXmlResourceFactory"
			isDefault="true">
			<contentTypeBinding
				contentTypeId="org.eclipse.jpt.core.content.persistence">
			</contentTypeBinding>
		</resourceFactory>
		
		<resourceFactory
			class="org.eclipse.jpt.core.resource.orm.OrmXmlResourceFactory"
			isDefault="true">
			<contentTypeBinding
				contentTypeId="org.eclipse.jpt.core.content.orm">
			</contentTypeBinding>
		</resourceFactory>
		
	</extension>
	
	
	<extension
		point="org.eclipse.wst.common.project.facet.core.facets">
		
		<project-facet id="jpt.jpa">
			<label>%JPA_FACET_LABEL</label>
			<description>%JPA_FACET_DESCRIPTION</description>
		</project-facet>
		
		<project-facet-version facet="jpt.jpa" version="1.0">
			<constraint>
				<and>
					<requires facet="jst.java" version="[5.0"/>
					<or>
						<requires facet="jst.utility" version="[1.0"/>
						<requires facet="jst.appclient" version="[1.2"/>
						<requires facet="jst.ejb" version="[1.1"/>
						<requires facet="jst.connector" version="[1.0"/>
						<requires facet="jst.web" version="[2.2"/>
					</or>
				</and>
			</constraint>
		</project-facet-version>
		
		<project-facet-version facet="jpt.jpa" version="2.0">
			<constraint>
				<and>
					<requires facet="jst.java" version="[5.0"/>
					<or>
						<requires facet="jst.utility" version="[1.0"/>
						<requires facet="jst.appclient" version="[1.2"/>
						<requires facet="jst.ejb" version="[1.1"/>
						<requires facet="jst.connector" version="[1.0"/>
						<requires facet="jst.web" version="[2.2"/>
					</or>
				</and>
			</constraint>
		</project-facet-version>
		
		<template id="jpt.jpa.template">
			<label>%JPA_TEMPLATE_LABEL</label>
			<fixed facet="jst.java"/>
			<fixed facet="jpt.jpa"/>
			<preset id="jpt.jpa.2_0.preset"/>
		</template>
		
		<action facet="jpt.jpa" type="install" id="jpt.jpa.install">
			<config-factory class="org.eclipse.jpt.core.internal.facet.JpaFacetInstallDataModelProvider"/>
			<delegate class="org.eclipse.jpt.core.internal.facet.JpaFacetInstallDelegate"/>
		</action>
		
		<!-- 
			The uninstall action is only used to enable facet uninstallation
			through the facet UI.  The delegate currently has no functionality. 
		-->
		<action facet="jpt.jpa" type="uninstall" id="jpt.jpa.uninstall">
			<delegate class="org.eclipse.jpt.core.internal.facet.JpaFacetUninstallDelegate"/>
		</action>
		
		<!-- 
			The version change  
		-->
		<action facet="jpt.jpa" type="version-change" id="jpt.jpa.version-change">
			<config-factory class="org.eclipse.jpt.core.internal.facet.JpaFacetVersionChangeDataModelProvider"/>
			<delegate class="org.eclipse.jpt.core.internal.facet.JpaFacetVersionChangeDelegate"/>
		</action>
		
	</extension>
	
	
	<extension
		point="org.eclipse.wst.common.project.facet.core.presets">
		
		<static-preset id="jpt.jpa.1_0.preset">
			<label>%JPA_1.0_PRESET_LABEL</label>
			<facet id="jst.java" version="5.0"/>
			<facet id="jst.utility" version="1.0"/>
			<facet id="jpt.jpa" version="1.0"/>
		</static-preset>
		
		<static-preset id="jpt.jpa.2_0.preset">
			<label>%JPA_2.0_PRESET_LABEL</label>
			<facet id="jst.java" version="6.0"/>
			<facet id="jst.utility" version="1.0"/>
			<facet id="jpt.jpa" version="2.0"/>
		</static-preset>
		
	</extension>
	
	
	<extension 
		point="org.eclipse.wst.common.project.facet.core.runtimes">
		
		<supported>
			<runtime-component any="true"/>
			<facet id="jpt.jpa"/>
		</supported>
		
	</extension>
		
	
	<extension
		point="org.eclipse.wst.validation.validatorV2"
		id="jpaValidator"
		name="%JPA_VALIDATOR">
		
		<validator
			class="org.eclipse.jpt.core.internal.validation.JpaValidator">
			<include>
				<rules>
					<facet id="jpt.jpa"/>
				</rules>
			</include>
			<include>
				<rules>
					<contentType id="org.eclipse.jdt.core.javaSource"/>
					<contentType id="org.eclipse.jpt.core.content.jar"/>
					<contentType id="org.eclipse.jpt.core.content.baseJpaContent" exactMatch="false"/>
				</rules>
			</include>
		</validator>
		
	</extension>
	
</plugin>
