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

<plugin>

   <!-- The following extension point is internal, though likely to be promoted for public use, possibly with changes, in a future release. -->
   <extension-point id="locator" name="%XP_WEB_SERVICE_LOCATOR" schema="schema/webServiceLocator.exsd"/>
   
   <extension-point id="ExtensibilityElementTransformer" name="%XP_EXTENSIBILITY_ELEMENT_TRANSFORMER" schema="schema/ExtensibilityElementTransformer.exsd"/>

   <!-- Extension providing workspace WSDL discovery -->   
   <extension
         point="org.eclipse.wst.ws.locator">

      <webServiceLocatorCategory
            id="org.eclipse.wst.ws.internal.wsfinder.category.workspace"
            label="%X_WEB_SERVICE_LOCATOR_CATEGORY_WORKSPACE"/>

      <webServiceLocator
            class="org.eclipse.wst.ws.internal.wsfinder.WorkspaceWSDLLocator"
            id="org.eclipse.wst.ws.internal.wsfinder.WorkspaceWSDLLocator"
            category="org.eclipse.wst.ws.internal.wsfinder.category.workspace"
            label="%X_WEB_SERVICE_LOCATOR_WORKSPACE">
      </webServiceLocator>

   </extension>
   
   <!-- Extension to bind a file type to WSIL files -->
   <extension point="org.eclipse.team.core.fileTypes">
      <fileTypes
            type="text"
            extension="wsil"/>
   </extension>

   <!-- Extension to define a content type for WSIL files -->
   <extension point="org.eclipse.core.runtime.contentTypes">
      <content-type
            priority="high"
            name="%X_WSIL_CONTENT_TYPE"
            id="wsilsource"
            base-type="org.eclipse.core.runtime.xml"
            default-charset="UTF-8"
            file-extensions="wsil"/>
   </extension>
   
   <extension point="org.eclipse.wst.ws.service.policy.servicepolicy">
     <servicePolicy>
         <loadListener class="org.eclipse.wst.ws.internal.preferences.MigrateWSIpreferencesLoadListener"/>
     </servicePolicy>
   </extension> 
   
  <extension point="org.eclipse.core.expressions.propertyTesters">
    <propertyTester
      id="org.eclipse.wst.ws.service.ws.service.policy"
      type="org.eclipse.core.resources.IProject"
      namespace="org.eclipse.wst.ws.service.ws.service.policy"
      properties="projectHasWSDLfiles"
      class="org.eclipse.wst.ws.internal.preferences.WSDLFilePropertyTester">
    </propertyTester>
  </extension>
  
   <extension point="org.eclipse.wst.ws.service.policy.servicepolicy">
     <servicePolicy>
       <enablement>
           <or>
             <test property="org.eclipse.wst.common.project.facet.core.projectFacet"
                   value="jst.web"/>
             <test property="org.eclipse.wst.common.project.facet.core.projectFacet"
                   value="jst.ejb"/>
             <test property="org.eclipse.wst.ws.service.ws.service.policy.projectHasWSDLfiles"/>
           </or>
       </enablement>
       
       <policy id="org.eclipse.wst.ws.service.policy.ui.servicepols.wsiprofilecomp">
         <!-- CONTEXT_ID PSPW0001 for the Service Policies WS-I Preferences category -->
         <descriptor longName="%PREFERENCE_SERVICEPOLICIES_CONTAINER_WSI_COMPLIANCE" iconPath="icons/full/obj16/wsicat.gif" contextHelpId="org.eclipse.wst.ws.service.policy.ui.PSPW0001"
         	description="%DESCRIPTION_WSI_COMPLIANCE"/>
       </policy>
       <policy id="org.eclipse.wst.ws.service.policy.ui.servicepols.wsiprofilecomp.wsiap" parentPolicyId="org.eclipse.wst.ws.service.policy.ui.servicepols.wsiprofilecomp" enumListId="org.eclipse.wst.service.policy.suggestionEnum" defaultEnumId="org.eclipse.wst.sug.suggest">
         <!-- CONTEXT_ID PSPW0002 for the Service Policies WS-I AP 1.0 Preference -->
         <descriptor longName="%LABEL_WSI_AP" iconPath="icons/full/obj16/wsicat_child.gif" contextHelpId="org.eclipse.wst.ws.service.policy.ui.PSPW0002"
         	description="%DESCRIPTION_WSI_AP"/>
         <relationship enumList="org.eclipse.wst.sug.suggest">
           <targetPolicy id="org.eclipse.wst.ws.service.policy.ui.servicepols.wsiprofilecomp.wsissbp"
                   itemList="org.eclipse.wst.sug.suggest org.eclipse.wst.sug.require"/>
         </relationship>
         <relationship enumList="org.eclipse.wst.sug.require">
           <targetPolicy id="org.eclipse.wst.ws.service.policy.ui.servicepols.wsiprofilecomp.wsissbp"
                   itemList="org.eclipse.wst.sug.require"/>
         </relationship>
         <state key="defaultProtocol" value="http://schemas.xmlsoap.org/wsdl/soap/"/>
       </policy>
       <policy id="org.eclipse.wst.ws.service.policy.ui.servicepols.wsiprofilecomp.wsissbp" parentPolicyId="org.eclipse.wst.ws.service.policy.ui.servicepols.wsiprofilecomp" enumListId="org.eclipse.wst.service.policy.suggestionEnum" defaultEnumId="org.eclipse.wst.sug.suggest">
         <!-- CONTEXT_ID PSPW0003 for the Service Policies WS-I SSBP 1.0 Preference -->
         <descriptor longName="%LABEL_WSI_SSBP" iconPath="icons/full/obj16/wsicat_child.gif" contextHelpId="org.eclipse.wst.ws.service.policy.ui.PSPW0003"
         	description="%DESCRIPTION_WSI_SSBP"/>
         <state key="defaultProtocol" value="http://schemas.xmlsoap.org/wsdl/soap/"/>
       </policy>
     </servicePolicy>
   </extension>

   
</plugin>
