KD SOAP  1.9.1
Signals | Public Member Functions | List of all members
KDSoapJob Class Referenceabstract

KDSoapJob provides a job-based interface to handle asynchronous KD Soap calls. More...

#include <KDSoapJob.h>

Inherits QObject.

Signals

void finished (KDSoapJob *job)
 

Public Member Functions

 KDSoapJob (QObject *parent=nullptr)
 
 ~KDSoapJob ()
 
KDSoapHeaders requestHeaders () const
 
void setRequestHeaders (const KDSoapHeaders &headers)
 
bool isFault () const
 
QString faultAsString () const
 
KDSoapMessage reply () const
 
KDSoapHeaders replyHeaders () const
 
void start ()
 
void setAutoDelete (bool enable)
 

Detailed Description

KDSoapJob provides a job-based interface to handle asynchronous KD Soap calls.

For each SOAP operation, kdwsdl2cpp generates a corresponding KDSoapJob subclass. This makes it easier to manage multiple callers in the client application code calling the same functions, preventing callers processing results for calls made from another caller instead of their own calls.

For example, a call to getMothersDay (from the holidays example) using the conventional asynchronous API would look like this:

connect(client, SIGNAL(getMothersDayDone(TNS__GetMothersDayResponse)), this, SLOT(getMothersDayDone(TNS__GetMothersDayResponse)));
connect(client, SIGNAL(getMothersDayError(KDSoapMessage)), this, SLOT(getMothersDayError(KDSoapMessage)));
TNS__GetMothersDay params;
params.setYear(2012);
client->asyncGetMothersDay(params);

In this example, all responses to getMothersDay made client will be received by the slots connected above. Using the job-based API, it becomes:

GetMothersDayJob* job = new GetMothersDayJob(client);
connect(job, SIGNAL(finished(KDSoapJob*)), this, SLOT(getMothersDayDone(KDSoapJob*)));
TNS__GetMothersDay params;
params.setYear(2012);
job->setParameters(params);
job->start();

Now only the result of this specific getMothersDay call will be received by the slot.

Since
1.2

Constructor & Destructor Documentation

KDSoapJob::KDSoapJob ( QObject *  parent = nullptr)
explicit

Constructs a KD Soap job.

Parameters
parentoptional parent object
KDSoapJob::~KDSoapJob ( )

Destructor.

Member Function Documentation

KDSoapHeaders KDSoapJob::requestHeaders ( ) const

Returns the reply headers received from the SOAP server once the request was completed. Only valid once the request is completed and finished() was emitted.

void KDSoapJob::setRequestHeaders ( const KDSoapHeaders headers)

Sets request headers to be sent to the SOAP server. These are sent in addition to the persistent headers set via the client interface.

Since
1.8
bool KDSoapJob::isFault ( ) const

Returns whether the reply message (see reply()) represents a fault.

QString KDSoapJob::faultAsString ( ) const

A human-readable error string describing the fault if the reply message is a fault, an empty string otherwise.

KDSoapMessage KDSoapJob::reply ( ) const

Returns the reply message received from the SOAP server once the request was completed. Only valid once the request is completed and finished() was emitted.

KDSoapHeaders KDSoapJob::replyHeaders ( ) const

Returns the reply headers received from the SOAP server once the request was completed. Only valid once the request is completed and finished() was emitted.

Since
1.8
void KDSoapJob::start ( )

Starts the job. The job will emit finished() once done.

void KDSoapJob::setAutoDelete ( bool  enable)

Defines whether the job should be automatically deleted or not.

Since
1.8
void KDSoapJob::finished ( KDSoapJob job)
signal

emitted when the job is completed, i.e. the reply for the job's request was received. To read the result, call reply() in the connected slot. Do not delete the job, the job will auto-delete itself. This behavior can be changed with setAutoDelete().

Parameters
jobThe job instance that emitted the signal

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

Klarälvdalens Datakonsult AB (KDAB)
"The Qt, C++ and OpenGL Experts"
https://www.kdab.com/
https://www.kdab.com/development-resources/qt-tools/kd-soap/