xmltooling  3.0.3
soap11::SOAPClient Class Reference

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

#include <xmltooling/soap/SOAPClient.h>

Public Member Functions

 SOAPClient (bool validate=false)
 Constructor. More...
 
void setValidating (bool validate=true)
 Controls schema validation of incoming XML messages. More...
 
virtual void send (const Envelope &env, const xmltooling::SOAPTransport::Address &addr)
 Sends the supplied envelope to the identified recipient/endpoint. More...
 
virtual Envelope * receive ()
 Returns the response message, if any. More...
 
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. More...
 
virtual bool handleFault (const soap11::Fault &fault)
 Handling of SOAP faults. More...
 

Protected Attributes

bool m_validate
 Flag controlling schema validation. More...
 
xmltooling::SOAPTransportm_transport
 Holds response until retrieved by caller. More...
 

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

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

Constructor.

Parameters
validatetrue iff schema validation should be used

Member Function Documentation

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

Handling of SOAP faults.

Parameters
faultSOAP Fault received by client
Returns
true iff the Fault should be treated as a fatal error
virtual void soap11::SOAPClient::prepareTransport ( xmltooling::SOAPTransport transport)
protectedvirtual

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

Parameters
transportreference to transport layer
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.

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
envSOAP envelope to send
addraddressing information
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
validatetrue iff the client should use a validating XML parser

Member Data Documentation

xmltooling::SOAPTransport* soap11::SOAPClient::m_transport
protected

Holds response until retrieved by caller.

bool soap11::SOAPClient::m_validate
protected

Flag controlling schema validation.


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