com.sun.xml.ws.wsdl
Class PayloadQNameBasedOperationFinder

java.lang.Object
  extended by com.sun.xml.ws.wsdl.WSDLOperationFinder
      extended by com.sun.xml.ws.wsdl.PayloadQNameBasedOperationFinder

final class PayloadQNameBasedOperationFinder
extends WSDLOperationFinder

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

A map of all payload QNames that the operations in the port allow and the corresponding QName of the wsdl operation is initialized in the constructor. The payload QName is extracted from the request Packet and used to identify the wsdl operation.


Field Summary
static QName EMPTY_PAYLOAD
           
static String EMPTY_PAYLOAD_LOCAL
           
static String EMPTY_PAYLOAD_NSURI
           
 
Fields inherited from class com.sun.xml.ws.wsdl.WSDLOperationFinder
binding, seiModel, wsdlModel
 
Constructor Summary
PayloadQNameBasedOperationFinder(WSDLPort wsdlModel, WSBinding binding, SEIModel seiModel)
           
 
Method Summary
 QName getWSDLOperationQName(Packet request)
          This methods returns the QName of the WSDL operation correponding to a request Packet.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

EMPTY_PAYLOAD_LOCAL

public static final String EMPTY_PAYLOAD_LOCAL
See Also:
Constant Field Values

EMPTY_PAYLOAD_NSURI

public static final String EMPTY_PAYLOAD_NSURI
See Also:
Constant Field Values

EMPTY_PAYLOAD

public static final QName EMPTY_PAYLOAD
Constructor Detail

PayloadQNameBasedOperationFinder

public PayloadQNameBasedOperationFinder(WSDLPort wsdlModel,
                                        WSBinding binding,
                                        @Nullable
                                        SEIModel seiModel)
Method Detail

getWSDLOperationQName

public QName getWSDLOperationQName(Packet request)
                            throws DispatchException
Description copied from class: WSDLOperationFinder
This methods returns the QName of the WSDL operation correponding to a request Packet. An implementation should return null when it cannot dispatch to a unique method based on the information it processes. In such case, other OperationFinders are queried to resolve a WSDL operation. It should throw an instance of DispatchException if it finds incorrect information in the packet.

Specified by:
getWSDLOperationQName in class WSDLOperationFinder
Parameters:
request - Request Packet that is used to find the associated WSDLOperation
Returns:
not null if it finds a unique handler for the request null if it cannot idenitify a unique wsdl operation from the Payload QName.
Throws:
DispatchException - if the payload itself is incorrect, this happens when the payload is not accepted by any operation in the port.


Copyright (c) 1997-2012 Oracle and/or its affiliates. All rights reserved.