soap11::SOAPClient Class Reference

Implements SOAP 1.1 messaging over a transport. More...

`#include <xmltooling/soap/SOAPClient.h>`

Collaboration diagram for soap11::SOAPClient:
[legend]

## Public Member Functions

| SOAPClient (bool validate=false)
| Constructor.
void | setValidating (bool validate=true)
| Controls schema validation of incoming XML messages.
virtual void | send (const Envelope &env, const xmltooling::SOAPTransport::Address &addr)
| Sends the supplied envelope to the identified recipient/endpoint.
virtual Envelope * | receive ()
| Returns the response message, if any.
virtual void | reset ()
| Resets the object for another call.

## Protected Member Functions

virtual void | prepareTransport (xmltooling::SOAPTransport &transport)
| Allows client to supply transport-layer settings prior to sending message.
virtual bool | handleFault (const soap11::Fault &fault)
| Handling of SOAP faults.

## Protected Attributes

bool | m_validate
| Flag controlling schema validation.
xmltooling::SOAPTransport * | m_transport
| Holds response until retrieved by caller.

## Detailed Description

Implements SOAP 1.1 messaging over a transport.

In the abstract, this can be a one-way exchange, or use asynchronous transports, but this is mostly theoretical at this point.

## Constructor & Destructor Documentation

## SOAPClient()

soap11::SOAPClient::SOAPClient | ( | bool | validate = false | ) |

Constructor.

Parameters

  validate | true iff schema validation should be used

## Member Function Documentation

## handleFault()

virtual bool soap11::SOAPClient::handleFault | ( | const soap11::Fault & | fault | ) |

protected virtual

Handling of SOAP faults.

Parameters

  fault | SOAP Fault received by client

Returns
  true iff the Fault should be treated as a fatal error

## prepareTransport()

virtual void soap11::SOAPClient::prepareTransport | ( | xmltooling::SOAPTransport & | transport | ) |

protected virtual

Allows client to supply transport-layer settings prior to sending message.

Parameters

  transport | reference to transport layer

## receive()

virtual Envelope * soap11::SOAPClient::receive | ( |  | ) |

virtual

Returns the response message, if any.

As long as a response is "expected" but not available, nullptr will be returned. If no response will be forthcoming, an exception is raised.

The caller is responsible for freeing the returned envelope.

## send()

virtual void soap11::SOAPClient::send | ( | const Envelope & | env,
|  | const xmltooling::SOAPTransport::Address & | addr )

virtual

Sends the supplied envelope to the identified recipient/endpoint.

The client object will instantiate a transport layer object appropriate for the endpoint URL provided and supply it to the prepareTransport() method below.

To authenticate the server end, the transport layer object exposes a method to load a TrustEngine and CredentialResolver in a subclass-specific version of the prepareTransport() method.

Parameters

  env | SOAP envelope to send
  addr | addressing information

## setValidating()

void soap11::SOAPClient::setValidating | ( | bool | validate = true | ) |

Controls schema validation of incoming XML messages.

This is separate from other forms of programmatic validation of objects, but can detect a much wider range of syntax errors.

Parameters

  validate | true iff the client should use a validating XML parser

The documentation for this class was generated from the following file:

- xmltooling/soap/SOAPClient.h