blob: 90adc1817ed5e4cc5a6c09ce467fe696e7989f9b [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>
<!--
Copyright (c) 2007, 2013 Oracle. All rights reserved.
This program and the accompanying materials are made available under the
terms of the Eclipse Public License 2.0, which accompanies this distribution
and is available at http://www.eclipse.org/legal/epl-2.0/.
Contributors:
Oracle - initial API and implementation
-->
<plugin>
<!-- ***** extension points ***** -->
<extension-point
id="jpaPlatforms"
name="%JPA_PLATFORM"
schema="schema/jpaPlatforms.exsd"/>
<!-- ***** expression definitions ***** -->
<extension
point="org.eclipse.core.expressions.definitions">
<!--
Return whether a resource's project has the JPA facet
(or a project facet version matches the JPA facet).
Force activation of the WST facet plug-in containing the property tester.
Example usage:
<adapt type="org.eclipse.core.resources.IResource">
<reference definitionId="org.eclipse.jpt.jpa.expression.hasJpaFacet"/>
</adapt>
-->
<definition id="org.eclipse.jpt.jpa.expression.hasJpaFacet">
<test property="org.eclipse.wst.common.project.facet.core.projectFacet"
value="jpt.jpa"
forcePluginActivation="true"/>
</definition>
<!-- Return whether a resource's project has the JPA 1.0 facet. -->
<definition id="org.eclipse.jpt.jpa.expression.hasJpa1_0Facet">
<test property="org.eclipse.wst.common.project.facet.core.projectFacet"
value="jpt.jpa:1.0"
forcePluginActivation="true"/>
</definition>
<!-- Return whether a resource's project has the JPA 2.0 facet. -->
<definition id="org.eclipse.jpt.jpa.expression.hasJpa2_0Facet">
<test property="org.eclipse.wst.common.project.facet.core.projectFacet"
value="jpt.jpa:2.0"
forcePluginActivation="true"/>
</definition>
<!-- Return whether a resource's project has the JPA 2.1 facet. -->
<definition id="org.eclipse.jpt.jpa.expression.hasJpa2_1Facet">
<test property="org.eclipse.wst.common.project.facet.core.projectFacet"
value="jpt.jpa:2.1"
forcePluginActivation="true"/>
</definition>
<!-- Return whether a resource's project has the JPA 2.2 facet. -->
<definition id="org.eclipse.jpt.jpa.expression.hasJpa2_2Facet">
<test property="org.eclipse.wst.common.project.facet.core.projectFacet"
value="jpt.jpa:2.2"
forcePluginActivation="true"/>
</definition>
<!--
Return whether a resource's project (or any project referencing the resource's project)
has the JPA facet.
Force activation of the Dali common core plug-in containing the property tester.
But note: The property tester class is in a package that does not cause the plug-in to load;
so the class will be loaded, but the plug-in will not.
Example usage:
<adapt type="org.eclipse.core.resources.IResource">
<reference definitionId="org.eclipse.jpt.jpa.expression.anyReferencingProjectHasJpaFacet"/>
</adapt>
-->
<definition id="org.eclipse.jpt.jpa.expression.anyReferencingProjectHasJpaFacet">
<test property="org.eclipse.jpt.common.core.anyReferencingProjectHasFacet"
value="jpt.jpa"
forcePluginActivation="true"/>
</definition>
</extension>
<!-- ***** adapters ***** -->
<extension
point="org.eclipse.core.runtime.adapters">
<!-- IWorkspace
-> JpaWorkspace
-> JpaProjectManager
-->
<factory
adaptableType="org.eclipse.core.resources.IWorkspace"
class="org.eclipse.jpt.jpa.core.internal.WorkspaceAdapterFactory">
<adapter type="org.eclipse.jpt.jpa.core.JpaWorkspace"/>
<adapter type="org.eclipse.jpt.jpa.core.JpaProjectManager"/>
</factory>
<!-- IProject
-> JpaProject.Reference
-> JpaProject
-->
<factory
adaptableType="org.eclipse.core.resources.IProject"
class="org.eclipse.jpt.jpa.core.internal.ProjectAdapterFactory">
<adapter type="org.eclipse.jpt.jpa.core.JpaProject$Reference"/>
<adapter type="org.eclipse.jpt.jpa.core.JpaProject"/>
</factory>
<!-- IFile
-> JpaFile.Reference
-> JpaFile
-> JptXmlResource
-->
<factory
adaptableType="org.eclipse.core.resources.IFile"
class="org.eclipse.jpt.jpa.core.internal.FileAdapterFactory">
<adapter type="org.eclipse.jpt.jpa.core.JpaFile$Reference"/>
<adapter type="org.eclipse.jpt.jpa.core.JpaFile"/>
<adapter type="org.eclipse.jpt.common.core.resource.xml.JptXmlResource"/>
</factory>
<!-- IResource -> JpaPlatform.Config -->
<factory
adaptableType="org.eclipse.core.resources.IResource"
class="org.eclipse.jpt.jpa.core.internal.platform.ResourceAdapterFactory">
<adapter type="org.eclipse.jpt.jpa.core.JpaPlatform$Config"/>
</factory>
<!-- IJavaElement -> JpaPlatform.Config -->
<factory
adaptableType="org.eclipse.jdt.core.IJavaElement"
class="org.eclipse.jpt.jpa.core.internal.platform.JavaElementAdapterFactory">
<adapter type="org.eclipse.jpt.jpa.core.JpaPlatform$Config"/>
</factory>
<!-- JpaLibraryProviderInstallOperationConfig -> JpaPlatform.Config -->
<factory
adaptableType="org.eclipse.jpt.jpa.core.libprov.JpaLibraryProviderInstallOperationConfig"
class="org.eclipse.jpt.jpa.core.internal.libprov.JpaLibraryProviderInstallOperationConfigAdapterFactory">
<adapter type="org.eclipse.jpt.jpa.core.JpaPlatform$Config"/>
</factory>
<!-- XmlFile -> JpaPlatform.Config -->
<factory
adaptableType="org.eclipse.jpt.jpa.core.context.XmlFile"
class="org.eclipse.jpt.jpa.core.internal.XmlFileAdapterFactory">
<adapter type="org.eclipse.jpt.jpa.core.JpaPlatform$Config"/>
</factory>
</extension>
<!-- ***** content types ***** -->
<extension
point="org.eclipse.core.contenttype.contentTypes">
<!-- JPA XML file ("abstract") -->
<content-type
id="org.eclipse.jpt.jpa.core.content.jpaXmlContent"
name="%JPA_XML_CONTENT"
base-type="org.eclipse.core.runtime.xml"
describer="org.eclipse.jpt.common.core.internal.bundleexclude.IndeterminateContentDescriber">
</content-type>
<!-- persistence.xml -->
<content-type
id="org.eclipse.jpt.jpa.core.content.persistence"
name="%PERSISTENCE_XML_CONTENT"
base-type="org.eclipse.jpt.jpa.core.content.jpaXmlContent"
file-names="persistence.xml">
<describer
class="org.eclipse.core.runtime.content.XMLRootElementContentDescriber2">
<parameter name="element"
value="{http://java.sun.com/xml/ns/persistence}persistence"/>
<parameter name="element"
value="{http://xmlns.jcp.org/xml/ns/persistence}persistence"/>
</describer>
</content-type>
<!-- mapping file ("abstract") -->
<!--
NB: because multiple inheritance of content types is unsupported,
we support only *XML* mapping files (not that we've encountered otherwise...)
-->
<content-type
id="org.eclipse.jpt.jpa.core.content.mappingFile"
name="%MAPPING_FILE_CONTENT"
base-type="org.eclipse.jpt.jpa.core.content.jpaXmlContent">
</content-type>
<!-- orm.xml -->
<content-type
id="org.eclipse.jpt.jpa.core.content.orm"
name="%ORM_XML_CONTENT"
base-type="org.eclipse.jpt.jpa.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"/>
<parameter name="element"
value="{http://xmlns.jcp.org/xml/ns/persistence/orm}entity-mappings"/>
</describer>
</content-type>
</extension>
<!-- ***** resource types ***** -->
<extension
point="org.eclipse.jpt.common.core.resourceTypes">
<resource-type
id="org.eclipse.jpt.jpa.core.resource.persistence_1_0"
content-type="org.eclipse.jpt.jpa.core.content.persistence"
version="1.0"/>
<resource-type
id="org.eclipse.jpt.jpa.core.resource.persistence_2_0"
content-type="org.eclipse.jpt.jpa.core.content.persistence"
version="2.0"/>
<resource-type
content-type="org.eclipse.jpt.jpa.core.content.persistence"
id="org.eclipse.jpt.jpa.core.resource.persistence_2_1"
version="2.1"/>
<resource-type
content-type="org.eclipse.jpt.jpa.core.content.persistence"
id="org.eclipse.jpt.jpa.core.resource.persistence_2_2"
version="2.2"/>
<resource-type
id="org.eclipse.jpt.jpa.core.resource.orm_1_0"
content-type="org.eclipse.jpt.jpa.core.content.orm"
version="1.0"/>
<resource-type
id="org.eclipse.jpt.jpa.core.resource.orm_2_0"
content-type="org.eclipse.jpt.jpa.core.content.orm"
version="2.0"/>
<resource-type
id="org.eclipse.jpt.jpa.core.resource.orm_2_1"
content-type="org.eclipse.jpt.jpa.core.content.orm"
version="2.1"/>
<resource-type
id="org.eclipse.jpt.jpa.core.resource.orm_2_2"
content-type="org.eclipse.jpt.jpa.core.content.orm"
version="2.2"/>
</extension>
<!-- ***** property testers ***** -->
<extension
point="org.eclipse.core.expressions.propertyTesters">
<propertyTester
id="org.eclipse.jpt.jpa.core.propertyTester.PersistentAttribute"
type="org.eclipse.jpt.jpa.core.context.PersistentAttribute"
namespace="org.eclipse.jpt.jpa.core"
properties="isMapped, isNotMapped, isVirtual, isNotVirtual"
class="org.eclipse.jpt.jpa.core.internal.context.PersistentAttributePropertyTester"/>
<propertyTester
id="org.eclipse.jpt.jpa.core.propertyTester.JpaPlatform"
type="org.eclipse.jpt.jpa.core.JpaPlatform$Config"
namespace="org.eclipse.jpt.jpa.core"
properties="jpaPlatform, jpaPlatformGroup"
class="org.eclipse.jpt.jpa.core.internal.platform.JpaPlatformPropertyTester"/>
<propertyTester
id="org.eclipse.jpt.jpa.core.propertyTester.XmlFile"
type="org.eclipse.jpt.jpa.core.context.XmlFile"
namespace="org.eclipse.jpt.jpa.core"
properties="isLatestSupportedVersion, isNotLatestSupportedVersion, isGenericMappingFile"
class="org.eclipse.jpt.jpa.core.internal.context.XmlFilePropertyTester"/>
<propertyTester
id="org.eclipse.jpt.jpa.core.propertyTester.JptResourceModel"
type="org.eclipse.jpt.common.core.JptResourceModel"
namespace="org.eclipse.jpt.jpa.core"
properties="isLatestSupportedVersion, isNotLatestSupportedVersion, isGenericMappingFile"
class="org.eclipse.jpt.jpa.core.internal.JptResourceModelPropertyTester"/>
</extension>
<!-- ***** preferences ***** -->
<extension
point="org.eclipse.core.runtime.preferences">
<initializer class="org.eclipse.jpt.jpa.core.internal.JpaPreferenceInitializer"/>
</extension>
<!-- ***** markers ***** -->
<!--
*** Do NOT qualify the marker id with "org.eclipse.jpt.jpa.core".
*** See bug 252891.
-->
<extension
point="org.eclipse.core.resources.markers"
id="problem"
name="%JPA_PROBLEM">
<persistent value="true"/>
<!-- Can't use text marker until we have specific models for each input type (XML, java)
<super type="org.eclipse.core.resources.textmarker"/>
-->
<super type="org.eclipse.wst.validation.problemmarker2"/>
<super type="org.eclipse.jdt.core.problem"/>
</extension>
<!-- ***** JPA platforms (eat our own dogfood) ***** -->
<extension
point="org.eclipse.jpt.jpa.core.jpaPlatforms">
<jpaPlatformGroup
id="generic"
label="%GENERIC_PLATFORM_GROUP_LABEL"/>
<jpaPlatform
id="generic"
label="%GENERIC_1_0_PLATFORM_LABEL"
factoryClass="org.eclipse.jpt.jpa.core.internal.GenericJpaPlatformFactory"
group="generic"
jpaFacetVersion="1.0"
default="false"/>
<jpaPlatform
id="generic2_0"
label="%GENERIC_2_0_PLATFORM_LABEL"
factoryClass="org.eclipse.jpt.jpa.core.internal.jpa2.GenericJpaPlatformFactory2_0"
group="generic"
jpaFacetVersion="2.0"
default="false"/>
<jpaPlatform
id="generic2_1"
label="%GENERIC_2_1_PLATFORM_LABEL"
factoryClass="org.eclipse.jpt.jpa.core.internal.jpa2_1.GenericJpaPlatformFactory2_1"
group="generic"
jpaFacetVersion="2.1"
default="false"/>
<jpaPlatform
id="generic2_2"
label="%GENERIC_2_2_PLATFORM_LABEL"
factoryClass="org.eclipse.jpt.jpa.core.internal.jpa2_2.GenericJpaPlatformFactory2_2"
group="generic"
jpaFacetVersion="2.2"
default="false"/>
</extension>
<!-- ***** EMF ecore package registry ***** -->
<extension
point="org.eclipse.emf.ecore.generated_package">
<package
uri="http://www.eclipse.org/dali/persistence"
class="org.eclipse.jpt.jpa.core.resource.persistence.PersistencePackage"
genModel="model/jpaResourceModels.genmodel"/>
<package
uri="http://www.eclipse.org/dali/orm"
class="org.eclipse.jpt.jpa.core.resource.orm.OrmPackage"
genModel="model/jpaResourceModels.genmodel"/>
</extension>
<!-- ***** library validators ***** -->
<extension
point="org.eclipse.jpt.common.core.libraryValidators">
<libraryValidator
id="genericUserLibraryValidator"
class="org.eclipse.jpt.jpa.core.internal.libval.GenericJpaUserLibraryValidator">
<enablement>
<with variable="libraryProvider">
<test property="org.eclipse.jpt.common.core.extendsId"
value="jpa-user-library-provider"/>
</with>
</enablement>
</libraryValidator>
<libraryValidator
id="genericEclipselinkBundlesLibraryValidator"
class="org.eclipse.jpt.jpa.core.internal.libval.GenericEclipseLinkBundlesLibraryValidator">
<enablement>
<with variable="libraryProvider">
<test property="org.eclipse.jpt.common.core.extendsId"
value="eclipselink-bundles-library-provider"/>
</with>
</enablement>
</libraryValidator>
</extension>
<!-- ***** WTP library providers ***** -->
<extension
point="org.eclipse.jst.common.project.facet.core.legacyLibraryProviderDetectors">
<detector class="org.eclipse.jpt.jpa.core.internal.libprov.LegacyJpaLibraryProviderDetector"/>
</extension>
<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.jpa.core.internal.libprov.LegacyJpaLibraryProviderUninstallOperation"/>
</action>
</provider>
<provider
id="jpa-no-op-library-provider"
extends="jpt-no-op-library-provider">
<param name="message" value="%NO_OP_LIBRARY_PROVIDER_MESSAGE"/>
<enablement>
<with variable="requestingProjectFacet">
<reference definitionId="org.eclipse.jpt.jpa.expression.hasJpaFacet"/>
</with>
</enablement>
</provider>
<provider
id="jpa-user-library-provider"
extends="wtp-user-library-provider">
<enablement>
<with variable="requestingProjectFacet">
<reference definitionId="org.eclipse.jpt.jpa.expression.hasJpaFacet"/>
</with>
</enablement>
<action type="INSTALL">
<config class="org.eclipse.jpt.jpa.core.internal.libprov.JpaUserLibraryProviderInstallOperationConfig"/>
<operation class="org.eclipse.jst.j2ee.internal.common.classpath.WtpUserLibraryProviderInstallOperation"/>
</action>
</provider>
<provider
id="jpa-deprecated-user-library-provider"
extends="user-library-provider"
abstract="true">
<label>%DEPRECATED_USER_LIBRARY_PROVIDER_LABEL</label>
<action type="INSTALL">
<config class="org.eclipse.jst.common.project.facet.core.libprov.user.UserLibraryProviderInstallOperationConfig"/>
<operation class="org.eclipse.jst.common.project.facet.core.libprov.NoOpLibraryProviderOperation"/>
</action>
</provider>
<provider
id="jpa-generic1_0-user-library-provider"
extends="jpa-deprecated-user-library-provider"
hidden="true">
</provider>
<provider
id="jpa-generic2_0-user-library-provider"
extends="jpa-deprecated-user-library-provider"
hidden="true">
</provider>
<provider
id="jpa-osgi-bundles-library-provider"
extends="wtp-osgi-bundles-library-provider"
abstract="true">
<enablement>
<with variable="requestingProjectFacet">
<reference definitionId="org.eclipse.jpt.jpa.expression.hasJpaFacet"/>
</with>
</enablement>
<action type="INSTALL">
<config class="org.eclipse.jpt.jpa.core.internal.libprov.JpaOsgiBundlesLibraryProviderInstallOperationConfig"/>
<operation class="org.eclipse.jst.j2ee.internal.common.classpath.WtpOsgiBundlesLibraryProviderInstallOperation"/>
</action>
</provider>
<!--
All OSGi library providers that point to EclipseLink bundles extend this.
It exists purely as an identifier for library validation.
-->
<provider
id="eclipselink-bundles-library-provider"
extends="jpa-osgi-bundles-library-provider"
abstract="true"/>
<provider
id="eclipselink-102-osgi-bundles-library-provider"
extends="eclipselink-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">
<reference definitionId="org.eclipse.jpt.jpa.expression.hasJpa1_0Facet"/>
</with>
</enablement>
</provider>
<provider
id="eclipselink-110-osgi-bundles-library-provider"
extends="eclipselink-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">
<reference definitionId="org.eclipse.jpt.jpa.expression.hasJpa1_0Facet"/>
</with>
</enablement>
</provider>
<provider
id="eclipselink-120-osgi-bundles-library-provider"
extends="eclipselink-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">
<reference definitionId="org.eclipse.jpt.jpa.expression.hasJpa1_0Facet"/>
</with>
</enablement>
</provider>
<provider
id="eclipselink-200-osgi-bundles-library-provider"
extends="eclipselink-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)"/>
</provider>
<provider
id="eclipselink-210-osgi-bundles-library-provider"
extends="eclipselink-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)"/>
</provider>
</extension>
<!-- ***** WTP resource factories ***** -->
<extension
point="org.eclipse.wst.common.modulecore.resourceFactories">
<resourceFactory
class="org.eclipse.jpt.jpa.core.resource.persistence.PersistenceXmlResourceFactory"
isDefault="true">
<contentTypeBinding contentTypeId="org.eclipse.jpt.jpa.core.content.persistence"/>
</resourceFactory>
<resourceFactory
class="org.eclipse.jpt.jpa.core.resource.orm.OrmXmlResourceFactory"
isDefault="true">
<contentTypeBinding contentTypeId="org.eclipse.jpt.jpa.core.content.orm"/>
</resourceFactory>
</extension>
<!-- ***** WTP facets ***** -->
<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>
<requires facet="java" version="[5.0"/>
</constraint>
</project-facet-version>
<project-facet-version facet="jpt.jpa" version="2.0">
<constraint>
<requires facet="java" version="[5.0"/>
</constraint>
</project-facet-version>
<project-facet-version facet="jpt.jpa" version="2.1">
<constraint>
<requires facet="java" version="[5.0"/>
</constraint>
</project-facet-version>
<project-facet-version facet="jpt.jpa" version="2.2">
<constraint>
<requires facet="java" version="[5.0"/>
</constraint>
</project-facet-version>
<template id="jpt.jpa.template">
<label>%JPA_TEMPLATE_LABEL</label>
<fixed facet="jpt.jpa"/>
<fixed facet="java"/>
</template>
<action facet="jpt.jpa" type="install" id="jpt.jpa.install">
<config-factory class="org.eclipse.jpt.jpa.core.internal.facet.JpaFacetInstallDataModelProvider"/>
<delegate class="org.eclipse.jpt.jpa.core.internal.facet.JpaFacetInstallDelegate"/>
</action>
<action facet="jpt.jpa" type="uninstall" id="jpt.jpa.uninstall">
<delegate class="org.eclipse.jpt.jpa.core.internal.facet.JpaFacetUninstallDelegate"/>
</action>
<action facet="jpt.jpa" type="version-change" id="jpt.jpa.version-change">
<config-factory class="org.eclipse.jpt.jpa.core.internal.facet.JpaFacetVersionChangeDataModelProvider"/>
<delegate class="org.eclipse.jpt.jpa.core.internal.facet.JpaFacetVersionChangeDelegate"/>
</action>
</extension>
<extension
point="org.eclipse.wst.common.project.facet.core.listeners">
<listener
class="org.eclipse.jpt.jpa.core.internal.facet.RuntimeChangedListener"
eventTypes="TARGETED_RUNTIMES_CHANGED"/>
</extension>
<extension
point="org.eclipse.wst.common.project.facet.core.presets">
<dynamic-preset id="basic.jpa.se.configuration">
<factory class="org.eclipse.jpt.jpa.core.internal.facet.BasicJpaSEConfigurationPresetFactory"/>
</dynamic-preset>
<dynamic-preset id="basic.jpa.ee.configuration">
<factory class="org.eclipse.jpt.jpa.core.internal.facet.BasicJpaEEConfigurationPresetFactory"/>
</dynamic-preset>
</extension>
<extension
point="org.eclipse.wst.common.project.facet.core.runtimes">
<supported>
<facet id="jpt.jpa"/>
<runtime-component any="true"/>
</supported>
</extension>
<!-- ***** WTP validation ***** -->
<extension
point="org.eclipse.wst.validation.validatorV2"
id="jpaValidator"
name="%JPA_VALIDATOR">
<validator
class="org.eclipse.jpt.jpa.core.internal.validation.JpaValidator"
markerId="org.eclipse.jpt.jpa.core.problem">
<include>
<rules>
<facet id="jpt.jpa"/>
</rules>
</include>
<include>
<rules>
<contentType id="org.eclipse.jdt.core.javaSource" exactMatch="false"/>
<contentType id="org.eclipse.jpt.common.core.content.jar" exactMatch="true"/>
<contentType id="org.eclipse.jpt.jpa.core.content.jpaXmlContent" exactMatch="false"/>
<contentType id="org.eclipse.jpt.common.core.content.projectFacet" exactMatch="true"/>
</rules>
</include>
</validator>
</extension>
<!-- ***** refactoring ***** -->
<extension
point="org.eclipse.ltk.core.refactoring.deleteParticipants">
<deleteParticipant
class="org.eclipse.jpt.jpa.core.internal.refactoring.JpaDeleteTypeParticipant"
id="org.eclipse.jpt.jpa.core.refactoring.jpaDeleteTypeParticipant"
name="%JPA_DELETE_TYPE_PARTICIPANT_NAME">
<enablement>
<with variable="element">
<instanceof value="org.eclipse.jdt.core.IType"/>
<adapt type="org.eclipse.core.resources.IResource">
<reference definitionId="org.eclipse.jpt.jpa.expression.anyReferencingProjectHasJpaFacet"/>
</adapt>
</with>
</enablement>
</deleteParticipant>
<deleteParticipant
class="org.eclipse.jpt.jpa.core.internal.refactoring.JpaDeletePackageOrFolderParticipant"
id="org.eclipse.jpt.jpa.core.refactoring.jpaDeletePackageOrFolderParticipant"
name="%JPA_DELETE_PACKAGE_OR_FOLDER_PARTICIPANT_NAME">
<enablement>
<with variable="element">
<or>
<instanceof value="org.eclipse.jdt.core.IPackageFragment"/>
<instanceof value="org.eclipse.core.resources.IFolder"/>
</or>
<adapt type="org.eclipse.core.resources.IResource">
<reference definitionId="org.eclipse.jpt.jpa.expression.anyReferencingProjectHasJpaFacet"/>
</adapt>
</with>
</enablement>
</deleteParticipant>
<deleteParticipant
class="org.eclipse.jpt.jpa.core.internal.refactoring.JpaDeleteMappingFileParticipant"
id="org.eclipse.jpt.jpa.core.refactoring.jpaDeleteMappingFileParticipant"
name="%JPA_DELETE_MAPPING_FILE_PARTICIPANT_NAME">
<enablement>
<with variable="element">
<instanceof value="org.eclipse.core.resources.IFile"/>
<test property="org.eclipse.core.resources.contentTypeId"
value="org.eclipse.jpt.jpa.core.content.mappingFile"
args="kindOf"/>
<adapt type="org.eclipse.core.resources.IResource">
<reference definitionId="org.eclipse.jpt.jpa.expression.anyReferencingProjectHasJpaFacet"/>
</adapt>
</with>
</enablement>
</deleteParticipant>
</extension>
<extension
point="org.eclipse.ltk.core.refactoring.moveParticipants">
<moveParticipant
class="org.eclipse.jpt.jpa.core.internal.refactoring.JpaMoveTypeParticipant"
id="org.eclipse.jpt.jpa.core.ltk.jpaMoveTypeParticipant"
name="%JPA_MOVE_TYPE_PARTICIPANT_NAME">
<enablement>
<with variable="element">
<instanceof value="org.eclipse.jdt.core.IType"/>
<adapt type="org.eclipse.core.resources.IResource">
<reference definitionId="org.eclipse.jpt.jpa.expression.anyReferencingProjectHasJpaFacet"/>
</adapt>
</with>
</enablement>
</moveParticipant>
</extension>
<extension
point="org.eclipse.ltk.core.refactoring.renameParticipants">
<renameParticipant
class="org.eclipse.jpt.jpa.core.internal.refactoring.JpaRenameTypeParticipant"
id="org.eclipse.jpt.jpa.core.ltk.jpaRenameTypeParticipant"
name="%JPA_RENAME_TYPE_PARTICIPANT_NAME">
<enablement>
<with variable="element">
<instanceof value="org.eclipse.jdt.core.IType"/>
<adapt type="org.eclipse.core.resources.IResource">
<reference definitionId="org.eclipse.jpt.jpa.expression.anyReferencingProjectHasJpaFacet"/>
</adapt>
</with>
</enablement>
</renameParticipant>
<renameParticipant
class="org.eclipse.jpt.jpa.core.internal.refactoring.JpaRenamePackageParticipant"
id="org.eclipse.jpt.jpa.core.ltk.jpaRenamePackageParticipant"
name="%JPA_RENAME_PACKAGE_PARTICIPANT_NAME">
<enablement>
<with variable="element">
<instanceof value="org.eclipse.jdt.core.IPackageFragment"/>
<adapt type="org.eclipse.core.resources.IResource">
<reference definitionId="org.eclipse.jpt.jpa.expression.anyReferencingProjectHasJpaFacet"/>
</adapt>
</with>
</enablement>
</renameParticipant>
<renameParticipant
class="org.eclipse.jpt.jpa.core.internal.refactoring.JpaRenameFolderParticipant"
id="org.eclipse.jpt.jpa.core.ltk.jpaRenameFolderParticipant"
name="%JPA_RENAME_FOLDER_PARTICIPANT_NAME">
<enablement>
<with variable="element">
<instanceof value="org.eclipse.core.resources.IFolder"/>
<adapt type="org.eclipse.core.resources.IResource">
<reference definitionId="org.eclipse.jpt.jpa.expression.anyReferencingProjectHasJpaFacet"/>
</adapt>
</with>
</enablement>
</renameParticipant>
<renameParticipant
class="org.eclipse.jpt.jpa.core.internal.refactoring.JpaRenameMappingFileParticipant"
id="org.eclipse.jpt.jpa.core.ltk.jpaRenameMappingFileParticipant"
name="%JPA_RENAME_MAPPING_FILE_PARTICIPANT_NAME">
<enablement>
<with variable="element">
<instanceof value="org.eclipse.core.resources.IFile"/>
<test property="org.eclipse.core.resources.contentTypeId"
value="org.eclipse.jpt.jpa.core.content.mappingFile"
args="kindOf"/>
<adapt type="org.eclipse.core.resources.IResource">
<reference definitionId="org.eclipse.jpt.jpa.expression.anyReferencingProjectHasJpaFacet"/>
</adapt>
</with>
</enablement>
</renameParticipant>
</extension>
<extension
point="org.eclipse.ltk.core.refactoring.moveParticipants">
<moveParticipant
class="org.eclipse.jpt.jpa.core.internal.refactoring.JpaMoveMappingFileParticipant"
id="org.eclipse.jpt.jpa.core.ltk.jpaMoveMappingFileParticipant"
name="%JPA_MOVE_MAPPING_FILE_PARTICIPANT_NAME">
<enablement>
<with variable="element">
<instanceof value="org.eclipse.core.resources.IFile"/>
<test property="org.eclipse.core.resources.contentTypeId"
value="org.eclipse.jpt.jpa.core.content.mappingFile"
args="kindOf"/>
<adapt type="org.eclipse.core.resources.IResource">
<reference definitionId="org.eclipse.jpt.jpa.expression.anyReferencingProjectHasJpaFacet"/>
</adapt>
</with>
</enablement>
</moveParticipant>
<moveParticipant
class="org.eclipse.jpt.jpa.core.internal.refactoring.JpaMoveFolderParticipant"
id="org.eclipse.jpt.jpa.core.ltk.jpaMoveFolderParticipant"
name="%JPA_MOVE_FOLDER_PARTICIPANT_NAME">
<enablement>
<with variable="element">
<instanceof value="org.eclipse.core.resources.IFolder"/>
<adapt type="org.eclipse.core.resources.IResource">
<reference definitionId="org.eclipse.jpt.jpa.expression.anyReferencingProjectHasJpaFacet"/>
</adapt>
</with>
</enablement>
</moveParticipant>
</extension>
</plugin>