xmltooling  3.3.0
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

◆ SOAPClient()

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

Constructor.

Parameters
validatetrue iff schema validation should be used

Member Function Documentation

◆ handleFault()

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

◆ prepareTransport()

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

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

Member Data Documentation

◆ m_transport

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

Holds response until retrieved by caller.

◆ m_validate

bool soap11::SOAPClient::m_validate
protected

Flag controlling schema validation.


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