com.sun.xml.ws.server.sei
Class PayloadQNameBasedDispatcher

java.lang.Object
  extended by com.sun.xml.ws.server.sei.PayloadQNameBasedDispatcher
All Implemented Interfaces:
EndpointMethodDispatcher

final class PayloadQNameBasedDispatcher
extends Object
implements EndpointMethodDispatcher

An EndpointMethodDispatcher that uses SOAP payload first child's QName as the key for dispatching.

A map of all payload QNames on the port and the corresponding EndpointMethodHandler is initialized in the constructor. The payload QName is extracted from the request Packet and used as the key to return the correct handler.


Constructor Summary
PayloadQNameBasedDispatcher(AbstractSEIModelImpl model, WSBinding binding, SEIInvokerTube invokerTube)
           
 
Method Summary
 EndpointMethodHandler getEndpointMethodHandler(Packet request)
          Returns the EndpointMethodHandler for the request Packet.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PayloadQNameBasedDispatcher

public PayloadQNameBasedDispatcher(AbstractSEIModelImpl model,
                                   WSBinding binding,
                                   SEIInvokerTube invokerTube)
Method Detail

getEndpointMethodHandler

@Nullable
public EndpointMethodHandler getEndpointMethodHandler(Packet request)
                                               throws DispatchException
Description copied from interface: EndpointMethodDispatcher
Returns the EndpointMethodHandler for the request Packet.

Specified by:
getEndpointMethodHandler in interface EndpointMethodDispatcher
Parameters:
request - request packet
Returns:
not null if it finds a unique handler for the request null otherwise
Throws:
DispatchException - if the payload itself is incorrect