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

<plugin>

   <!-- The following extension point is internal and likely to be removed in a future release. -->
   <extension-point
      id="publicUDDIRegistryType"
      name="%XP_PUBLIC_UDDI_REGISTRY_TYPES"/>

   <!-- The following extension point is internal and likely to be removed in a future release. -->
   <extension-point
      id="privateUDDIRegistryType"
      name="%XP_PRIVATE_UDDI_REGISTRY_TYPES"/>

   <!-- The following extension point is internal and likely to be removed in a future release. -->
   <extension-point
      id="webServiceTest"
      name="%XP_WEB_SERVICE_TEST"
      schema="schema/webServiceTest.exsd"/>

   <!-- The following extension point is internal, though likely to be made public with changes in a future release. -->
   <extension-point
      id="objectSelectionWidget"
      name="%XP_OBJECT_SELECTION_WIDGET"
      schema="schema/objectSelectionWidget.exsd"/>

   <!-- UDDI Registry Types -->
   
   <extension
         point="org.eclipse.jst.ws.consumption.ui.publicUDDIRegistryType">
      <publicUDDIRegistryType
            name="%PUBLICUDDIREGISTRYTYPE_NAME_SAP_TEST"
            class="org.eclipse.jst.ws.internal.consumption.ui.wizard.uddi.PublicUDDIRegistrySAPTest"
            id="org.eclipse.jst.ws.internal.consumption.ui.wizard.uddi.PublicUDDIRegistrySAPTest">
      </publicUDDIRegistryType>
   </extension>

   <extension
         point="org.eclipse.jst.ws.consumption.ui.publicUDDIRegistryType">
      <publicUDDIRegistryType
            name="%PUBLICUDDIREGISTRYTYPE_NAME_SAP"
            class="org.eclipse.jst.ws.internal.consumption.ui.wizard.uddi.PublicUDDIRegistrySAP"
            id="org.eclipse.jst.ws.internal.consumption.ui.wizard.uddi.PublicUDDIRegistrySAP">
      </publicUDDIRegistryType>
   </extension>

   <extension
         point="org.eclipse.jst.ws.consumption.ui.publicUDDIRegistryType">
      <publicUDDIRegistryType
            name="%PUBLICUDDIREGISTRYTYPE_NAME_XMETHODS"
            class="org.eclipse.jst.ws.internal.consumption.ui.wizard.uddi.PublicUDDIRegistryXMethods"
            id="org.eclipse.jst.ws.internal.consumption.ui.wizard.uddi.PublicUDDIRegistryXMethods">
      </publicUDDIRegistryType>
   </extension>

   <extension
         point="org.eclipse.jst.ws.consumption.ui.publicUDDIRegistryType">
      <publicUDDIRegistryType
            name="%PUBLICUDDIREGISTRYTYPE_NAME_NTTCOMM"
            class="org.eclipse.jst.ws.internal.consumption.ui.wizard.uddi.PublicUDDIRegistryNTTComm"
            id="org.eclipse.jst.ws.internal.consumption.ui.wizard.uddi.PublicUDDIRegistryNTTComm">
      </publicUDDIRegistryType>
   </extension>

   <!-- Test Facilities -->
   
   <extension
         point="org.eclipse.jst.ws.consumption.ui.webServiceTest">

      <webServiceTest
            methodsneeded="true"
            name="%SAMPLE_TYPE_WEBSERVICES_ID"
            java="true"
            codegen="true"
            class="org.eclipse.jst.ws.internal.consumption.ui.widgets.test.wssample.WebServiceWSSampleExecutable"
            id="org.eclipse.jst.ws.internal.consumption.ui.widgets.test.WebServiceSampleTest">
      </webServiceTest>

      <webServiceTest
            methodsneeded="false"
            name="%WSEXPLORER_ID"
            java="false"
            codegen="false"
            class="org.eclipse.jst.ws.internal.consumption.ui.widgets.test.explorer.WebServiceExplorerExecutable"
            id="org.eclipse.jst.ws.internal.consumption.ui.widgets.test.explorer.WebServiceExplorerExecutable">
      </webServiceTest>

   </extension>

   <!-- Dynamic Wizards -->

   <extension
         point="org.eclipse.ui.newWizards">
      <wizard
            name="%PLUGIN_NEW_WIZARD_NAME_WS_CLIENT"
            icon="icons/full/ctool16/newclient_webserv_wiz.gif"
            category="org.eclipse.jst.ws.ui.new"
            class="org.eclipse.wst.command.internal.env.ui.widgets.DynamicWizard"
            id="org.eclipse.jst.ws.internal.consumption.ui.wizard.client.clientwizard">
         <description>
               %PLUGIN_NEW_WIZARD_DESC_WS_CLIENT
         </description>
         <selection
               class="org.eclipse.core.resources.IResource">
         </selection>
      </wizard>
   </extension>

   <extension
         point="org.eclipse.wst.command.env.dynamicWizard">
      <dynamicWizard
            iconbanner="icons/full/wizban/webservicesclient_wiz.png"
            class="org.eclipse.jst.ws.internal.consumption.ui.widgets.binding.ClientWidgetBinding"
            title="%WIZARD_TITLE_WSC"
            id="org.eclipse.jst.ws.internal.consumption.ui.wizard.client.clientwizard">
      </dynamicWizard>
   </extension>

   <extension
         point="org.eclipse.wst.command.env.dynamicWizard">
      <dynamicWizard
            iconbanner="icons/full/wizban/gen_sample_wiz.png"
            class="org.eclipse.jst.ws.internal.consumption.ui.widgets.binding.GenSampleWidgetBinding"
            title="%WIZARD_TITLE_WSC"
            id="org.eclipse.jst.ws.internal.consumption.ui.wizard.client.gensamplewizard">
      </dynamicWizard>
   </extension>

   <!-- Handler extensions -->
   <extension
         point="org.eclipse.wst.command.env.dynamicWizard">
      <dynamicWizard
            iconbanner="icons/full/wizban/config_handler_wiz.png"
            class="org.eclipse.jst.ws.internal.consumption.ui.widgets.binding.ConfigServiceHandlersWidgetBinding"
            title="%LABEL_HANDLERS_CONFIG"
            id="org.eclipse.jst.ws.internal.consumption.ui.wizard.handlers.service">
      </dynamicWizard>
   </extension>

   <extension
         point="org.eclipse.wst.command.env.dynamicWizard">
      <dynamicWizard
            iconbanner="icons/full/wizban/config_handler_wiz.png"
            class="org.eclipse.jst.ws.internal.consumption.ui.widgets.binding.ConfigClientHandlersWidgetBinding"
            title="%LABEL_HANDLERS_CONFIG"
            id="org.eclipse.jst.ws.internal.consumption.ui.wizard.handlers.client">
      </dynamicWizard>
   </extension>

   <extension
         point="org.eclipse.wst.command.env.dynamicWizard">
      <dynamicWizard
            iconbanner="icons/full/wizban/config_handler_wiz.png"
            class="org.eclipse.jst.ws.internal.consumption.ui.widgets.binding.ConfigureHandlersWidgetBinding"
            title="%LABEL_HANDLERS_CONFIG"
            id="org.eclipse.jst.ws.internal.consumption.ui.wizard.handlers">
      </dynamicWizard>
   </extension>  
    
   <extension
         point="org.eclipse.ui.importWizards">
      <category
             id="org.eclipse.jst.ws.consumption.ui.wsimport.category"
             name="%WEBSERVICES_CATEGORY"/>
   </extension>
      
   <extension
         point="org.eclipse.ui.importWizards">
      <wizard
            name="%PLUGIN_IMPORT_WIZARD_NAME_WS"
            icon="icons/import_ws.gif"
            category="org.eclipse.jst.ws.consumption.ui.wsimport.category"
            class="org.eclipse.wst.command.internal.env.ui.widgets.DynamicWizard"
            id="org.eclipse.jst.ws.consumption.ui.wsimport">
         <description>
               %PLUGIN_IMPORT_WIZARD_DESC_WS
         </description>
      </wizard>
   </extension>

   <extension
         point="org.eclipse.wst.command.env.dynamicWizard">
      <dynamicWizard
            iconbanner="icons/full/wizban/import_ws_wiz.png"
            name="%PLUGIN_IMPORT_WIZARD_NAME_WS"
            class="org.eclipse.jst.ws.internal.consumption.ui.widgets.binding.ImportWSWidgetBinding"
            id="org.eclipse.jst.ws.consumption.ui.wsimport">
      </dynamicWizard>
   </extension>

   <extension
         point="org.eclipse.ui.importWizards">
      <wizard
            name="%IMPORT_WIZARD_NAME_WSIL"
            icon="icons/wsil/import_wsil.gif"
            category="org.eclipse.jst.ws.consumption.ui.wsimport.category"
            class="org.eclipse.wst.command.internal.env.ui.widgets.DynamicWizard"
            id="org.eclipse.jst.ws.consumption.ui.wsilimport">
         <description>
               %IMPORT_WIZARD_DESC_WSIL
         </description>
      </wizard>
   </extension>

   <extension
         point="org.eclipse.wst.command.env.dynamicWizard">
      <dynamicWizard
            iconbanner="icons/full/wizban/import-wsil_wiz.png"
            name="%IMPORT_WIZARD_NAME_WSIL"
            class="org.eclipse.jst.ws.internal.consumption.ui.widgets.binding.ImportWSILWidgetBinding"
            id="org.eclipse.jst.ws.consumption.ui.wsilimport">
      </dynamicWizard>
   </extension>

   <!-- Preference Pages -->

   <extension
         point="org.eclipse.ui.preferencePages">

      <page
            name="%PREFERENCE_CATEGORY_SERVER_RUNTIME"
            category="org.eclipse.wst.ws.internal.ui.preferences.name"
            class="org.eclipse.jst.ws.internal.consumption.ui.preferences.ServerRuntimePreferencePage"
            id="org.eclipse.jst.ws.internal.consumption.ui.preferences.ServerRuntimePreferencePage">            
      </page>
      
      <page
            name="%PREFERENCE_CATEGORY_DIALOGS"
            category="org.eclipse.wst.ws.internal.ui.preferences.name"
            class="org.eclipse.wst.command.internal.env.ui.preferences.ActionDialogsPreferencePage"
            id="org.eclipse.jst.wss.popup.category">
      </page>

      <page
            name="%PREFERENCE_CATEGORY_TEST_FACILITY"
            category="org.eclipse.wst.ws.internal.ui.preferences.name"
            class="org.eclipse.jst.ws.internal.ui.preferences.TestFacilityDefaultsPreferencePage"
            id="org.eclipse.jst.ws.internal.ui.preferences.TestFacilityDefaultsPreferencePage">
      </page>

      <page
            name="%PREFERENCE_CATEGORY_PROJECT_TOPOLOGY"
            category="org.eclipse.wst.ws.internal.ui.preferences.name"
            class="org.eclipse.jst.ws.internal.consumption.ui.preferences.ProjectTopologyPreferencePage"
            id="org.eclipse.jst.ws.internal.consumption.ui.preferences.ProjectTopologyPreferencePage">
      </page>
      
   </extension>

   <!-- Main Menu Actions -->

   <extension point="org.eclipse.ui.actionSets">

      <actionSet
            label="%COMMAND_LAUNCH_WS_EXPLORER"
            visible="true"
            id="org.eclipse.jst.ws.consumption">
         <menu
               label="%MENU_RUN"
               path="additions"
               id="org.eclipse.ui.run">
            <separator name="explorer">
            </separator>
         </menu>
         <action
               label="%COMMAND_LAUNCH_WS_EXPLORER"
               icon="icons/registry.gif"
               tooltip="%TOOLTIP_LAUNCH_WS_EXPLORER"
               class="org.eclipse.jst.ws.internal.consumption.ui.action.LaunchWSEAction"
               menubarPath="org.eclipse.ui.run/explorer"
               toolbarPath="additions"
               id="org.eclipse.jst.ws.internal.consumption.ui.action.LaunchWSEAction">
        </action>
     </actionSet>

   </extension>

   <!-- "Don't Show Me" Extensions -->

   <extension
         point="org.eclipse.wst.command.env.actionDialogPreferenceType">

      <actionDialogPreferenceType
            showcheckbox="true"
            name="%CHECKBOX_SHOW_GENERATE_JAVA_PROXY_DIALOG"
            category="org.eclipse.jst.wss.popup.category"
            tooltip="%TOOLTIP_PPAD_CHECKBOX_WSDL2PROXY"
            infopop="org.eclipse.jst.ws.consumption.ui.PPAD0004"
            alwayshide="false"
            objectids="org.eclipse.jst.ws.internal.consumption.ui.wizard.client.clientwizard.wsdl org.eclipse.jst.ws.internal.consumption.ui.wizard.client.clientwizard.wsil org.eclipse.jst.ws.internal.consumption.ui.wizard.client.clientwizard.service org.eclipse.jst.ws.internal.consumption.ui.wizard.client.clientwizard.wsdl.resource org.eclipse.jst.ws.internal.consumption.ui.wizard.client.clientwizard.serviceref"
            id="org.eclipse.jst.ws.internal.consumption.ui.wizard.client.clientwizard">
      </actionDialogPreferenceType>

      <actionDialogPreferenceType
            name="%CHECKBOX_SHOW_PROXY2SAMPLE_DIALOG"
            category="org.eclipse.jst.wss.popup.category"
            tooltip="%TOOLTIP_PPAD_CHECKBOX_PROXY2SAMPLE"
            infopop="org.eclipse.jst.ws.consumption.ui.PPAD0005"
            objectids="org.eclipse.jst.ws.internal.consumption.ui.wizard.client.gensamplewizard.file org.eclipse.jst.ws.internal.consumption.ui.wizard.client.gensamplewizard.java"
            id="org.eclipse.jst.ws.internal.consumption.ui.wizard.client.gensamplewizard">
      </actionDialogPreferenceType>

      <actionDialogPreferenceType
            showcheckbox="false"
            alwayshide="false"
            id="org.eclipse.jst.ws.internal.consumption.ui.wizard.client.genwsil">
      </actionDialogPreferenceType>

      <!-- actionDialogPreferenceType
            showcheckbox="false"
            alwayshide="false"
            id="org.eclipse.jst.ws.internal.consumption.ui.wizard.handlers.editor">
      </actionDialogPreferenceType -->

   </extension>

   <!-- Popups -->

   <extension
         point="org.eclipse.ui.popupMenus">

      <objectContribution
            objectClass="org.eclipse.core.resources.IFile"
            nameFilter="*.wsdl"
            id="org.eclipse.jst.ws.internal.consumption.ui.wizard.client.genwsil">
         <action
               label="%POPUP_GENERATE_WSIL"
               class="org.eclipse.wst.command.internal.env.ui.widgets.popup.DynamicPopupWizard"
               menubarPath="org.eclipse.jst.ws.atk.ui.webservice.category.popupMenu/popupActions"
               id="org.eclipse.jst.ws.consumption.ui.wsilimport">
         </action>
      </objectContribution>

      <objectContribution
            objectClass="org.eclipse.core.resources.IFile"
            nameFilter="*.wsdl"
            id="org.eclipse.jst.ws.internal.consumption.ui.wizard.client.clientwizard.wsdl">
         <action
               label="%ACTION_GENERATE_JAVA_PROXY"
               class="org.eclipse.wst.command.internal.env.ui.widgets.popup.DynamicPopupWizard"
               menubarPath="org.eclipse.jst.ws.atk.ui.webservice.category.popupMenu/popupActions"
               id="org.eclipse.jst.ws.internal.consumption.ui.wizard.client.clientwizard">
         </action>
      </objectContribution>

      <objectContribution
            objectClass="org.eclipse.core.resources.IFile"
            nameFilter="*.wsil"
            id="org.eclipse.jst.ws.internal.consumption.ui.wizard.client.clientwizard.wsil">
         <action
               label="%ACTION_GENERATE_JAVA_PROXY"
               class="org.eclipse.wst.command.internal.env.ui.widgets.popup.DynamicPopupWizard"
               menubarPath="org.eclipse.jst.ws.atk.ui.webservice.category.popupMenu/popupActions"
               id="org.eclipse.jst.ws.internal.consumption.ui.wizard.client.clientwizard">
         </action>
      </objectContribution>

      <objectContribution
            objectClass="org.eclipse.core.resources.IFile"
            nameFilter="*.java"
            id="org.eclipse.jst.ws.internal.consumption.ui.wizard.client.gensamplewizard.file">
         <action
               label="%ACTION_GEN_SAMPLE"
               class="org.eclipse.wst.command.internal.env.ui.widgets.popup.DynamicPopupWizard"
               menubarPath="org.eclipse.jst.ws.atk.ui.webservice.category.popupMenu/popupActions"
               id="org.eclipse.jst.ws.internal.consumption.ui.wizard.client.gensamplewizard">
         </action>
      </objectContribution>

      <objectContribution
            objectClass="org.eclipse.jdt.internal.core.CompilationUnit"
            nameFilter="*.java"
            id="org.eclipse.jst.ws.internal.consumption.ui.wizard.client.gensamplewizard.java">
         <action
               label="%ACTION_GEN_SAMPLE"
               class="org.eclipse.wst.command.internal.env.ui.widgets.popup.DynamicPopupWizard"
               menubarPath="org.eclipse.jst.ws.atk.ui.webservice.category.popupMenu/popupActions"
               id="org.eclipse.jst.ws.internal.consumption.ui.wizard.client.gensamplewizard">
         </action>
      </objectContribution>

      <objectContribution
            objectClass="org.eclipse.wst.wsdl.Service"
            nameFilter="*"
            id="org.eclipse.jst.ws.internal.consumption.ui.wizard.client.clientwizard.service">
         <action
               label="%ACTION_GENERATE_JAVA_PROXY"
               class="org.eclipse.wst.command.internal.env.ui.widgets.popup.DynamicPopupWizard"
               menubarPath="additions"
               id="org.eclipse.jst.ws.internal.consumption.ui.wizard.client.clientwizard">
         </action>
      </objectContribution>

      <objectContribution
            objectClass="org.eclipse.wst.wsdl.Service"
            nameFilter="*"
            id="org.eclipse.jst.ws.internal.consumption.ui.wizard.client.genwsil.service">
         <action
               label="%POPUP_GENERATE_WSIL"
               class="org.eclipse.wst.command.internal.env.ui.widgets.popup.DynamicPopupWizard"
               menubarPath="additions"
               id="org.eclipse.jst.ws.consumption.ui.wsilimport">
         </action>
      </objectContribution>

      <objectContribution
            objectClass="org.eclipse.core.resources.IFile"
            nameFilter="webservices.xml"
            id="org.eclipse.jst.ws.internal.consumption.ui.wizard.handlers.editor.file">
         <action
               label="%POPUP_ADD_HANDLERS"
               class="org.eclipse.wst.command.internal.env.ui.widgets.popup.DynamicPopupWizard"
               menubarPath="org.eclipse.jst.ws.atk.ui.webservice.category.popupMenu/popupActions"
               id="org.eclipse.jst.ws.internal.consumption.ui.wizard.handlers.service">
         </action>
      </objectContribution>

      <objectContribution
            objectClass="org.eclipse.wst.wsdl.Service"
            nameFilter="*"
            id="org.eclipse.jst.ws.internal.consumption.ui.wizard.handlers.editor.service">
         <action
               label="%POPUP_ADD_HANDLERS"
               class="org.eclipse.wst.command.internal.env.ui.widgets.popup.DynamicPopupWizard"
               menubarPath="additions"
               id="org.eclipse.jst.ws.internal.consumption.ui.wizard.handlers.service">
         </action>
      </objectContribution>   

      <objectContribution
            objectClass="org.eclipse.jst.j2ee.internal.webservice.WebServiceNavigatorGroupType"
            id="org.eclipse.jst.ws.internal.consumption.ui.wizard.handlers.editor.navGroup">
         <action
               label="%POPUP_ADD_HANDLERS"
               class="org.eclipse.wst.command.internal.env.ui.widgets.popup.DynamicPopupWizard"
               menubarPath="additions"
               id="org.eclipse.jst.ws.internal.consumption.ui.wizard.handlers">
         </action>
         <visibility>
			<objectState
                  name="type"
                  value="Handlers">
            </objectState>
         </visibility>
      </objectContribution>     

      <objectContribution
            objectClass="org.eclipse.wst.wsdl.util.WSDLResourceImpl"
            nameFilter="*"
            id="org.eclipse.jst.ws.internal.consumption.ui.wizard.handlers.editor.wsdlRes">
         <action
               label="%POPUP_ADD_HANDLERS"
               class="org.eclipse.wst.command.internal.env.ui.widgets.popup.DynamicPopupWizard"
               menubarPath="additions"
               id="org.eclipse.jst.ws.internal.consumption.ui.wizard.handlers.service">
         </action>
      </objectContribution>            

      <objectContribution
            objectClass="org.eclipse.core.resources.IFile"
            nameFilter="webservicesclient.xml"
            id="org.eclipse.jst.ws.internal.consumption.ui.wizard.handlers.editor.xmlfile">
         <action
               label="%POPUP_CONFIG_CLIENT_HANDLERS"
               class="org.eclipse.wst.command.internal.env.ui.widgets.popup.DynamicPopupWizard"
               menubarPath="org.eclipse.jst.ws.atk.ui.webservice.category.popupMenu/popupActions"
               id="org.eclipse.jst.ws.internal.consumption.ui.wizard.handlers.client">
         </action>
      </objectContribution>

      <objectContribution
            objectClass="org.eclipse.core.resources.IFile"
            nameFilter="ejb-jar.xml"
            id="org.eclipse.jst.ws.internal.consumption.ui.wizard.handlers.editor.ejbfile">
         <action
               label="%POPUP_CONFIG_CLIENT_HANDLERS"
               class="org.eclipse.wst.command.internal.env.ui.widgets.popup.DynamicPopupWizard"
               menubarPath="org.eclipse.jst.ws.atk.ui.webservice.category.popupMenu/popupActions"
               id="org.eclipse.jst.ws.internal.consumption.ui.wizard.handlers.client">
         </action>
      </objectContribution>    

      <objectContribution
            objectClass="org.eclipse.core.resources.IFile"
            nameFilter="web.xml"
            id="org.eclipse.jst.ws.internal.consumption.ui.wizard.handlers.editor.webfile">
         <action
               label="%POPUP_CONFIG_CLIENT_HANDLERS"
               class="org.eclipse.wst.command.internal.env.ui.widgets.popup.DynamicPopupWizard"
               menubarPath="org.eclipse.jst.ws.atk.ui.webservice.category.popupMenu/popupActions"
               id="org.eclipse.jst.ws.internal.consumption.ui.wizard.handlers.client">
         </action>
      </objectContribution>  

      <objectContribution
            objectClass="org.eclipse.core.resources.IFile"
            nameFilter="application-client.xml"
            id="org.eclipse.jst.ws.internal.consumption.ui.wizard.handlers.editor.appfile">
         <action
               label="%POPUP_CONFIG_CLIENT_HANDLERS"
               class="org.eclipse.wst.command.internal.env.ui.widgets.popup.DynamicPopupWizard"
               menubarPath="org.eclipse.jst.ws.atk.ui.webservice.category.popupMenu/popupActions"
               id="org.eclipse.jst.ws.internal.consumption.ui.wizard.handlers.client">
         </action>
      </objectContribution> 

      <objectContribution
            objectClass="org.eclipse.jst.j2ee.webservice.wsclient.ServiceRef"
            nameFilter="*"
            id="org.eclipse.jst.ws.internal.consumption.ui.wizard.handlers.editor.serviceref">
         <action
               label="%POPUP_CONFIG_CLIENT_HANDLERS"
               class="org.eclipse.wst.command.internal.env.ui.widgets.popup.DynamicPopupWizard"
               menubarPath="additions"
               id="org.eclipse.jst.ws.internal.consumption.ui.wizard.handlers.client">
         </action>
      </objectContribution>      
      
      <objectContribution
            objectClass="org.eclipse.wst.wsdl.util.WSDLResourceImpl"
            nameFilter="*"
            id="org.eclipse.jst.ws.internal.consumption.ui.wizard.client.clientwizard.wsdl.resource">
         <action
               label="%ACTION_GENERATE_JAVA_PROXY"
               class="org.eclipse.wst.command.internal.env.ui.widgets.popup.DynamicPopupWizard"
               menubarPath="additions"
               id="org.eclipse.jst.ws.internal.consumption.ui.wizard.client.clientwizard">
         </action>
      </objectContribution>

      <objectContribution
            objectClass="org.eclipse.jst.j2ee.webservice.wsclient.ServiceRef"
            nameFilter="*"
            id="org.eclipse.jst.ws.internal.consumption.ui.wizard.client.clientwizard.serviceref">
         <action
               label="%ACTION_GENERATE_JAVA_PROXY"
               class="org.eclipse.wst.command.internal.env.ui.widgets.popup.DynamicPopupWizard"
               menubarPath="additions"
               id="org.eclipse.jst.ws.internal.consumption.ui.wizard.client.clientwizard">
         </action>
      </objectContribution>

      <objectContribution
            objectClass="org.eclipse.wst.wsdl.util.WSDLResourceImpl"
            nameFilter="*"
            id="org.eclipse.jst.ws.internal.consumption.ui.wizard.client.genwsil.wsdl.resource">
         <action
               label="%POPUP_GENERATE_WSIL"
               class="org.eclipse.wst.command.internal.env.ui.widgets.popup.DynamicPopupWizard"
               menubarPath="additions"
               id="org.eclipse.jst.ws.consumption.ui.wsilimport">
         </action>
      </objectContribution>

      <objectContribution
         objectClass="org.eclipse.jst.j2ee.webservice.wsclient.ServiceRef"
         nameFilter="*"
         id="org.eclipse.jst.ws.internal.consumption.ui.wizard.client.genwsil.serviceref">
         <action
            label="%POPUP_GENERATE_WSIL"
            class="org.eclipse.wst.command.internal.env.ui.widgets.popup.DynamicPopupWizard"
            menubarPath="additions"
            id="org.eclipse.jst.ws.consumption.ui.wsilimport">
         </action>
      </objectContribution>
   </extension>

   <!-- Object Selection Widgets -->

   <extension
         point="org.eclipse.jst.ws.consumption.ui.objectSelectionWidget">
      <objectSelectionWidget
            class="org.eclipse.jst.ws.internal.consumption.ui.widgets.JavaBeanSelectionLaunchable"
            external_modify="true"
            id="org.eclipse.jst.ws.internal.consumption.ui.widgets.object.JavaBeanSelectionWidget"
            transformer="org.eclipse.jst.ws.internal.consumption.ui.widgets.object.JavaBeanSelectionTransformer">
      </objectSelectionWidget>
   </extension>

   <extension
         point="org.eclipse.jst.ws.consumption.ui.objectSelectionWidget">
      <objectSelectionWidget
            class="org.eclipse.jst.ws.internal.consumption.ui.widgets.object.EJBSelectionWidget"
            external_modify="false"
            id="org.eclipse.jst.ws.internal.consumption.ui.widgets.object.EJBSelectionWidget"
            transformer="org.eclipse.jst.ws.internal.consumption.ui.widgets.object.EJBSelectionTransformer">
      </objectSelectionWidget>
   </extension>

   <extension
         point="org.eclipse.jst.ws.consumption.ui.objectSelectionWidget">
      <objectSelectionWidget
            class="org.eclipse.jst.ws.internal.consumption.ui.widgets.object.WSDLSelectionWidget"
            external_modify="true"
            id="org.eclipse.jst.ws.internal.consumption.ui.widgets.object.WSDLSelectionWidget"
            transformer="org.eclipse.jst.ws.internal.consumption.ui.widgets.object.WSDLSelectionTransformer">
      </objectSelectionWidget>
   </extension>
   
   <!-- The following extension point is internal, though likely to be made public with changes in a future release. -->
   <extension-point id="wsImpl" name="%XP_wsImpl"/>

   <!-- The following extension point is internal, though likely to be made public with changes in a future release. -->
   <extension-point id="wsClientImpl" name="%XP_wsClientImpl"/>

   <!-- The following extension point is internal, though likely to be made public with changes in a future release. -->
   <extension-point id="runtimes" name="%XP_runtimes" />

   <!-- The following extension point is internal, though likely to be made public with changes in a future release. -->
   <extension-point id="serviceRuntimes" name="%XP_serviceRuntimes" />

   <!-- The following extension point is internal, though likely to be made public with changes in a future release. -->
   <extension-point id="clientRuntimes" name="%XP_clientRuntimes" />

   <!-- The following extension point is internal, though likely to be made public with changes in a future release. -->
   <extension-point id="tester" name="%XP_tester"/>

<!-- Test Extensions beginning  -->

<extension point="org.eclipse.jst.ws.consumption.ui.tester">
  <tester
    id="org.eclipse.jst.ws.internal.consumption.ui.widgets.test.WebServiceSampleTest"
    label="%SAMPLE_TYPE_WEBSERVICES_ID"
    testWSDL="no"
    wsClientImplIds="org.eclipse.jst.ws.client.type.java"
    moduletypes="webmodule"
    methodsneeded="true"
    codeGenerated="true"
    serverRequired="true"
    allowClientRuntimesRestriction="true"
    class="org.eclipse.jst.ws.internal.consumption.ui.widgets.test.wssample.GSTCWebServiceTester">
  </tester>
</extension>
<extension point="org.eclipse.jst.ws.consumption.ui.tester">
  <tester
    id="org.eclipse.jst.ws.internal.consumption.ui.widgets.test.explorer.WebServiceExplorer"
    label="%WSEXPLORER_ID"
    testWSDL="yes"
    wsClientImplIds="org.eclipse.jst.ws.client.type.java"
    moduletypes="webmodule"
    methodsneeded="false"
    codeGenerated="false"
    serverRequired="false"
    class="org.eclipse.jst.ws.internal.consumption.ui.widgets.test.explorer.WSEWebServiceTester">
  </tester>
</extension>

<!-- Test Extensions end  -->

<extension point="org.eclipse.jst.ws.consumption.ui.wsImpl">
  <webServiceImpl
            id="org.eclipse.jst.ws.wsImpl.java"
            label="%WEBSERVICETYPE_NAME_JAVA"
            resourceTypeMetadata="File IResource CompilationUnit"
            extensionMetadata=".java .class"
            objectSelectionWidget="org.eclipse.jst.ws.internal.consumption.ui.widgets.object.JavaBeanSelectionWidget"
            mergerClass="org.eclipse.jst.ws.internal.consumption.common.JavaMerger">
  </webServiceImpl>
</extension>   
<extension point="org.eclipse.jst.ws.consumption.ui.wsClientImpl">
  <webServiceClientImpl
            id="org.eclipse.jst.ws.client.type.java"
            label="%JAVA_PROXY">
  </webServiceClientImpl>
</extension>   

   	<extension point="org.eclipse.wst.command.env.ui.widgetRegistry">
       <widgetFactory   
             id="StartClientServer"
             insertBeforeCommandId="org.eclipse.jst.ws.internal.consumption.ui.extension.PreClientRunCommand"
             class="org.eclipse.jst.ws.internal.consumption.ui.server.StartClientWidgetFactory"/>
    </extension>
    
    <extension point="org.eclipse.wst.command.env.antScenario">
        <antScenario
            class="org.eclipse.jst.ws.internal.consumption.ui.ant.AntClientRootCommandFragment"
            scenarioType="client"/>
     </extension>
     
     <extension
           point="org.eclipse.wst.command.env.antDataMapping">
        <map
              key="InitialSelection"
              operation="org.eclipse.jst.ws.internal.consumption.ui.widgets.runtime.ClientRuntimeSelectionWidgetDefaultingCommand"
              property="InitialInitialSelection"
              required="true"
              transform="org.eclipse.jst.ws.internal.common.String2SelectionTransformer"/>
        <map
              key="InitialSelection"
              operation="org.eclipse.jst.ws.internal.consumption.ui.widgets.WSDLSelectionWidgetDefaultingCommand"
              property="InitialSelection"
              required="true"
              transform="org.eclipse.jst.ws.internal.common.String2SelectionTransformer"/>

        <map
              key="Client.RuntimeId"
              operation="org.eclipse.jst.ws.internal.consumption.ui.widgets.ClientWizardWidgetOutputCommand"
              property="ClientTypeRuntimeServer"
              transform="org.eclipse.jst.ws.internal.common.String2TypeRuntimeServerModifier"/>

        <map
              key="Client.ServerId"
              operation="org.eclipse.jst.ws.internal.consumption.ui.widgets.ClientWizardWidgetOutputCommand"
              property="ClientTypeRuntimeServer"
              transform="org.eclipse.jst.ws.internal.common.String2TypeRuntimeServerModifier"/>

        <map
              key="Client.TypeId"
              operation="org.eclipse.jst.ws.internal.consumption.ui.widgets.ClientWizardWidgetOutputCommand"
              property="ClientTypeRuntimeServer"
              transform="org.eclipse.jst.ws.internal.common.String2TypeRuntimeServerModifier"/>
        <map
              key="TestService"
              operation="org.eclipse.jst.ws.internal.consumption.ui.widgets.extensions.ClientExtensionDefaultingCommand"
              property="TestService"/>

        <map
              key="MonitorService"
              operation="org.eclipse.jst.ws.internal.consumption.ui.widgets.extensions.ClientExtensionDefaultingCommand"
              property="MonitorService"/>              

        <map
              key="Client.RuntimeId"
              operation="org.eclipse.jst.ws.internal.consumption.ui.widgets.extensions.ClientExtensionDefaultingCommand"
              property="ClientTypeRuntimeServer"
              transform="org.eclipse.jst.ws.internal.common.String2TypeRuntimeServerModifier"/>
        <map
              key="Client.ServerId"
              operation="org.eclipse.jst.ws.internal.consumption.ui.widgets.extensions.ClientExtensionDefaultingCommand"
              property="ClientTypeRuntimeServer"
              transform="org.eclipse.jst.ws.internal.common.String2TypeRuntimeServerModifier"/>     
        <map
              key="Client.TypeId"
              operation="org.eclipse.jst.ws.internal.consumption.ui.widgets.extensions.ClientExtensionDefaultingCommand"
              property="ClientTypeRuntimeServer"
              transform="org.eclipse.jst.ws.internal.common.String2TypeRuntimeServerModifier"/>        
        <map
              key="ClientProjectName"
              operation="org.eclipse.jst.ws.internal.consumption.ui.widgets.extensions.ClientExtensionDefaultingCommand"
              property="ClientProjectName"/>  
        <map
              key="ClientProjectName"
              operation="org.eclipse.jst.ws.internal.consumption.ui.widgets.runtime.ClientRuntimeSelectionWidgetDefaultingCommand"
              property="ClientProjectName"/>              
        <map
              key="ClientEarProjectName"
              operation="org.eclipse.jst.ws.internal.consumption.ui.widgets.extensions.ClientExtensionDefaultingCommand"
              property="ClientEarProjectName"/>         
        <map
              key="ClientComponentType"
              operation="org.eclipse.jst.ws.internal.consumption.ui.widgets.extensions.ClientExtensionDefaultingCommand"
              property="ClientComponentType"/>
        <map
              key="Client.RuntimeId"
              operation="org.eclipse.jst.ws.internal.consumption.ui.widgets.extensions.ClientExtensionFragment"
              property="ClientTypeRuntimeServer"
              transform="org.eclipse.jst.ws.internal.common.String2TypeRuntimeServerModifier"/>                
        <map
              key="Client.ServerId"
              operation="org.eclipse.jst.ws.internal.consumption.ui.widgets.extensions.ClientExtensionFragment"
              property="ClientTypeRuntimeServer"
              transform="org.eclipse.jst.ws.internal.common.String2TypeRuntimeServerModifier"/>                
        <map
              key="Client.TypeId"
              operation="org.eclipse.jst.ws.internal.consumption.ui.widgets.extensions.ClientExtensionFragment"
              property="ClientTypeRuntimeServer"
              transform="org.eclipse.jst.ws.internal.common.String2TypeRuntimeServerModifier"/>                
              
         <!-- mappings for listing options -->
        <map
              key="ListRuntimes"
              operation="org.eclipse.jst.ws.internal.consumption.ui.command.ListOptionsCommand"
              property="ListRuntimes"
              transform="org.eclipse.wst.command.internal.env.ant.String2BooleanTransformer"
              /> 

  		<map
              key="ListServers"
              operation="org.eclipse.jst.ws.internal.consumption.ui.command.ListOptionsCommand"
              property="ListServers"
              transform="org.eclipse.wst.command.internal.env.ant.String2BooleanTransformer"
              />  	
      </extension> 
</plugin>
