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

<!-- New popup extenstion to enables "Generate skeleton", "Generate Proxy" and "Test with Web Services Explorer" on the 
ServletLink object.  This is the object under the JSR-109 Web Services branch of the J2EE Project Explorer:

JSR-109 Web Services 
  Clients
  Services
     EchoService
        Handlers
        Service Classes
           ServiceImpl: echo_Echo       <==== This is the ServletLink
  
  When ServletLink is selected, "Generate Proxy" and "Test with Web Services Explorer" would select the correct WSDL 
  when the popup is initialized.
  
  Note that with bug 179751, we'll have to comment out the TODO for 179751 in TypeSelectionFilter2.java in order 
  for "Generate skeleton" popup on ServletLink to select top-down on the selected WSDL.  ServletLink would either
  always be recognized as selecting bottom-up or selecting top-down.
-->
	  <extension
         point="org.eclipse.ui.popupMenus">
        
         <objectContribution
            objectClass="org.eclipse.jst.j2ee.webservice.wsdd.ServletLink"
            nameFilter="*"
            id="org.eclipse.jst.ws.creation.ui.wizard.serverwizard.java">
         <action
               label="%ACTION_GENERATE_JAVA_SKELETON"
               class="org.eclipse.wst.command.internal.env.ui.widgets.popup.DynamicPopupWizard"
               menubarPath="additions"
               id="org.eclipse.jst.ws.creation.ui.wizard.serverwizard">
         </action>
      </objectContribution>
         
      <objectContribution
            objectClass="org.eclipse.jst.j2ee.webservice.wsdd.ServletLink"
            nameFilter="*"
            id="org.eclipse.jst.ws.internal.consumption.ui.wizard.client.clientwizard">
         <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.wsdd.ServletLink"
            nameFilter="*"
            id="org.eclipse.jst.ws.internal.consumption.ui.action.WSDLFileMenu">
         <action
               label="%POPUP_TEST_WSDL"
               class="org.eclipse.wst.ws.internal.explorer.popup.PopupTestWSDL"
               menubarPath="additions"
               id="org.eclipse.wst.ws.internal.explorer.popup.PopupTestWSDL">
         </action>
      </objectContribution>
    
      </extension>

<!-- Defines the WSCustomAdapterFactory as extension to the adapters framework to adapt ServletLink to IFile -->

<extension point="org.eclipse.core.runtime.adapters">
         <factory 
            class="org.eclipse.jst.ws.tests.util.WSCustomAdapterFactory" 
            adaptableType="org.eclipse.jst.j2ee.webservice.wsdd.ServletLink">
            <adapter type="org.eclipse.core.resources.IFile"/>
         </factory>
      </extension>

<!-- Defines the WSCustomAdapterFactory as extension to the adapters framework to adapt ServletLink to String -->
      <extension point="org.eclipse.core.runtime.adapters">
         <factory 
            class="org.eclipse.jst.ws.tests.util.WSCustomAdapterFactory" 
            adaptableType="org.eclipse.jst.j2ee.webservice.wsdd.ServletLink">
            <adapter type="java.lang.String"/>
         </factory>
      </extension>  
    
</plugin>
