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

    
   <extension
         id="JcaModuleExtension"
         name="JcaModuleExtension"
         point="org.eclipse.jst.j2ee.EARModuleExtension">
      <earModuleExtension
            extensionClass="org.eclipse.jst.j2ee.jca.internal.plugin.JcaModuleExtensionImpl">
      </earModuleExtension>
   </extension>
   <extension
         point="org.eclipse.wst.common.emfworkbench.integration.adapterFactory">
      <adapterFactory
            functionGroupID="org.eclipse.jst.j2ee"
            className="org.eclipse.jst.j2ee.internal.jca.providers.JcaItemProviderAdapterFactory"
            packageURI="jca.xmi"
            id="org.eclipse.jst.j2ee.jca.providers.JcaItemProviderAdapterFactory">
      </adapterFactory>
   </extension>
   <extension
         id="ConnectorValidator"
         name="%connector_validator_UI_"
         point="org.eclipse.wst.validation.validator">
      <validator>
         <enablement>
      		<and>
        		<test property="org.eclipse.wst.common.project.facet.core.projectFacet" value="jst.connector:1.5]"/>
			</and>
		</enablement>
          <contentTypeBinding
               contentTypeId="org.eclipse.jst.j2ee.connectorDD">
         </contentTypeBinding>
         <filter
               objectClass="org.eclipse.core.resources.IFile"
               nameFilter="MANIFEST.MF">
         </filter>
        <helper
               class="org.eclipse.jst.j2ee.internal.jca.validation.ConnectorHelper">
         </helper>
         <run
               class="org.eclipse.jst.j2ee.internal.jca.validation.UIConnectorValidator">
         </run>
         <runStrategy 
         	project="true">
         </runStrategy>
      </validator>
   </extension>
   
   <extension
         point="org.eclipse.wst.common.emfworkbench.integration.editModel">
      <editModel
            editModelID="jst.connector"
            factoryClass="org.eclipse.wst.common.componentcore.internal.impl.ArtifactEditModelFactory">
         <editModelResource
               autoload="false"
               URI="META-INF/ra.xml"/>
      </editModel>
   </extension>
   <extension
         point="org.eclipse.wst.common.modulecore.artifactedit">
      <artifactedit
            typeID="jst.connector"
            class="org.eclipse.jst.j2ee.jca.modulecore.util.ConnectorArtifactEdit">
      </artifactedit>
   </extension> 
   
   <!--============================-->
   <!-- Builder Provider registrations-->
   <!--============================-->
   <extension
         point="org.eclipse.wst.common.frameworks.DataModelProviderExtension">
     	<ProviderDefinesType
      		providerType="jst.connector.builder"
      		providerID="org.eclipse.jst.j2ee.internal.deployables.JavaComponentBuilderDataModelProvider"/>
	</extension>
	
	
  <!-- Project Facets -->
	<extension point="org.eclipse.wst.common.project.facet.core.facets">

    <project-facet id="jst.connector">
      <label>%CONN_FACET_LABEL</label>
      <description>%CONN_FACET_DESCRIPTION</description>
      <icon>icons/full/obj16/Connector.gif</icon>
      <default-version version="1.6"/>
    </project-facet>

    <project-facet-version facet="jst.connector" version="1.0">
      <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.connector" version="1.5">
      <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.connector" version="1.6">
      <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.connector" version="1.7">
      <constraint>
        <and>
          <requires facet="jst.java" version="[1.7"/>
          <conflicts group="modules"/>
        </and>
      </constraint>
      <group-member id="modules"/>
    </project-facet-version>

    <action facet="jst.connector" version="[1.0-1.7]" type="INSTALL" id="jst.connector.install">
      <delegate class="org.eclipse.jst.j2ee.jca.project.facet.ConnectorFacetInstallDelegate"/>
      <config-factory class="org.eclipse.jst.j2ee.jca.project.facet.ConnectorFacetInstallDataModelProvider"/>
    </action>
    
    <event-handler facet="jst.connector" version="[1.0-1.7]" type="POST_INSTALL">
      <delegate class="org.eclipse.jst.j2ee.jca.project.facet.ConnectorFacetPostInstallDelegate"/>
    </event-handler>
    
    <event-handler facet="jst.connector" version="[1.0-1.6]" type="RUNTIME_CHANGED">
      <delegate class="org.eclipse.jst.j2ee.project.facet.J2EEFacetRuntimeChangedDelegate"/>
    </event-handler>
    
    <template id="template.jst.connector">
      <label>%CONN_FACET_TEMPLATE</label>
      <fixed facet="jst.java"/>
      <fixed facet="jst.connector"/>
    </template>

  </extension>
  
  <extension
        point="org.eclipse.jst.j2ee.J2EEModelProvider">
        <provider>
        	<modelProvider factoryClass="org.eclipse.jst.j2ee.jca.modulecore.util.ConnectorArtifactEdit"/>	
      		<facet id="jst.connector" versions="1.0,1.5"/>
      	</provider>
  </extension>	
</plugin>
