Search in sources :

Example 1 with SOAPBinding

use of com.sun.tools.ws.wsdl.document.soap.SOAPBinding in project metro-jax-ws by eclipse-ee4j.

the class PseudoSchemaBuilder method build.

private void build(Port port) {
    if (wsdlModeler.isProvider(port))
        return;
    Binding binding = port.resolveBinding(wsdlDocument);
    SOAPBinding soapBinding = (SOAPBinding) WSDLModelerBase.getExtensionOfType(binding, SOAPBinding.class);
    // handled much earlier
    if (soapBinding == null) {
        soapBinding = (SOAPBinding) WSDLModelerBase.getExtensionOfType(binding, SOAP12Binding.class);
    }
    if (soapBinding == null)
        return;
    PortType portType = binding.resolvePortType(wsdlDocument);
    QName bindingName = WSDLModelerBase.getQNameOf(binding);
    // we dont want to process the port bound to the binding processed earlier
    if (bindingNameToPortMap.containsKey(bindingName))
        return;
    bindingNameToPortMap.put(bindingName, port);
    for (Iterator itr = binding.operations(); itr.hasNext(); ) {
        BindingOperation bindingOperation = (BindingOperation) itr.next();
        // get only the bounded operations
        Set boundedOps = portType.getOperationsNamed(bindingOperation.getName());
        if (boundedOps.size() != 1)
            continue;
        Operation operation = (Operation) boundedOps.iterator().next();
        // No pseudo schema required for doc/lit
        if (wsdlModeler.isAsync(portType, operation)) {
            buildAsync(portType, operation, bindingOperation);
        }
    }
}
Also used : SOAP12Binding(com.sun.tools.ws.wsdl.document.soap.SOAP12Binding) SOAPBinding(com.sun.tools.ws.wsdl.document.soap.SOAPBinding) JAXWSBinding(com.sun.tools.ws.wsdl.document.jaxws.JAXWSBinding) QName(javax.xml.namespace.QName) SOAPBinding(com.sun.tools.ws.wsdl.document.soap.SOAPBinding)

Aggregations

JAXWSBinding (com.sun.tools.ws.wsdl.document.jaxws.JAXWSBinding)1 SOAP12Binding (com.sun.tools.ws.wsdl.document.soap.SOAP12Binding)1 SOAPBinding (com.sun.tools.ws.wsdl.document.soap.SOAPBinding)1 QName (javax.xml.namespace.QName)1