KD SOAP
1.9.1
|
#include <KDSoapClientInterface.h>
Public Types |
Public Member Functions | |
KDSoapClientInterface (const QString &endPoint, const QString &messageNamespace) | |
~KDSoapClientInterface () | |
KDSoapPendingCall | asyncCall (const QString &method, const KDSoapMessage &message, const QString &soapAction=QString(), const KDSoapHeaders &headers=KDSoapHeaders()) |
KDSoapMessage | call (const QString &method, const KDSoapMessage &message, const QString &soapAction=QString(), const KDSoapHeaders &headers=KDSoapHeaders()) |
void | callNoReply (const QString &method, const KDSoapMessage &message, const QString &soapAction=QString(), const KDSoapHeaders &headers=KDSoapHeaders()) |
void | setAuthentication (const KDSoapAuthentication &authentication) |
void | setHeader (const QString &name, const KDSoapMessage &header) |
void | setSoapVersion (KDSoapClientInterface::SoapVersion version) |
KDSoapClientInterface::SoapVersion | soapVersion () const |
QString | endPoint () const |
void | setEndPoint (const QString &endPoint) |
QNetworkCookieJar * | cookieJar () const |
void | setCookieJar (QNetworkCookieJar *jar) |
QNetworkProxy | proxy () const |
void | setProxy (const QNetworkProxy &proxy) |
void | setRawHTTPHeaders (const QMap< QByteArray, QByteArray > &headers) |
void | setStyle (Style style) |
Style | style () const |
KDSoapHeaders | lastResponseHeaders () const |
void | ignoreSslErrors () |
void | ignoreSslErrors (const QList< QSslError > &errors) |
ignoreSslErrors If this function is called, the SSL errors given in errors will be ignored. Note that you can set the expected certificate in the SSL error. See QNetworkReply::ignoreSslErrors() for more information. More... | |
KDSoapSslHandler * | sslHandler () const |
QSslConfiguration | sslConfiguration () const |
void | setSslConfiguration (const QSslConfiguration &config) |
int | timeout () const |
void | setTimeout (int msecs) |
KDSoapClientInterface is a generic accessor class that is used to place calls to remote SOAP objects. This class is useful for dynamic access to remote objects: that is, when you do not have a generated code that represents the remote interface.
Version of the SOAP protocol to use when sending requests.
Enumerator | |
---|---|
SOAP1_1 |
Use format version 1.1 of the SOAP specification |
SOAP1_2 |
Use format version 1.2 of the SOAP specification |
WSDL style. See the "style" attribute for soap:binding, in the WSDL file. See https://www.ibm.com/developerworks/webservices/library/ws-whichwsdl/ for a discussion on the pros and cons of both styles.
In RPC style, the method name passed to call() or asyncCall() is sent as an xml element wrapping the message parameters.
In Document style, the KDSoapMessage represents the entire "document" to be sent, so the the method name passed to call() or asyncCall() is ignored, and the name of the KDSoapMessage is used as the main xml element name. This difference is mostly useful in the case of generated code, so that it can serialize existing complex types, and send them as messages.
Enumerator | |
---|---|
RPCStyle |
the method name is sent as an xml element wrapping the message parameters |
DocumentStyle |
the message is sent as is, the method name is usually the name of the message |
|
explicit |
Creates a KDSoapClientInterface object associated with the end point endPoint
.
endPoint | the URL of the SOAP service, including http or https scheme, port number if needed, and path. Example: http://server/path/soap.php |
messageNamespace | the namespace URI used for the message and its arguments. Example: http://server/path, but could be any URI, it doesn't have to exist or even to be http, this is really just a namespace, which is part of the specification of the SOAP service. |
KDSoapClientInterface::~KDSoapClientInterface | ( | ) |
Destroys the object interface and frees up any resource used.
KDSoapPendingCall KDSoapClientInterface::asyncCall | ( | const QString & | method, |
const KDSoapMessage & | message, | ||
const QString & | soapAction = QString() , |
||
const KDSoapHeaders & | headers = KDSoapHeaders() |
||
) |
Calls the method method
on this interface and passes the arguments specified in message
to the method.
method | the method name, without arguments. For instance "addContact" . Only used in RPC style. |
message | arguments for the method call |
soapAction | optional "SoapAction" header, see the specification of the SOAP service. You are strongly encouraged to pass a value here, even if it's just "", given that by default (for a null string) KDSoap will generate a SOAPAction for backwards compatibility reasons. |
headers | optional arguments which will be passed as <soap:Header> . |
This is an asynchronous call, so this function returns immediately. The returned KDSoapPendingCall object can be used to find out information about the reply. You should create a KDSoapPendingCallWatcher to connect to the finished() signal.
KDSoapMessage KDSoapClientInterface::call | ( | const QString & | method, |
const KDSoapMessage & | message, | ||
const QString & | soapAction = QString() , |
||
const KDSoapHeaders & | headers = KDSoapHeaders() |
||
) |
Calls the method method
on this interface and passes the parameters specified in message
to the method.
method | the method name, without arguments. For instance "addContact" . Only used in RPC style. |
message | arguments for the method call |
soapAction | optional "SoapAction" header, see the specification of the SOAP service. You are strongly encouraged to pass a value here, even if it's just "", given that by default (for a null string) KDSoap will generate a SOAPAction for backwards compatibility reasons. |
headers | optional arguments which will be passed as <soap:Header> . |
void KDSoapClientInterface::callNoReply | ( | const QString & | method, |
const KDSoapMessage & | message, | ||
const QString & | soapAction = QString() , |
||
const KDSoapHeaders & | headers = KDSoapHeaders() |
||
) |
Calls the method method
on this interface and passes the parameters specified in message
to the method.
method | the method name, without arguments. For instance "addContact" . Only used in RPC style. |
message | arguments for the method call |
soapAction | optional "SoapAction" header, see the specification of the SOAP service. You are strongly encouraged to pass a value here, even if it's just "", given that by default (for a null string) KDSoap will generate a SOAPAction for backwards compatibility reasons. |
headers | optional arguments which will be passed as <soap:Header> . |
This is an asynchronous call, where the caller does not want to wait for a response. The method returns immediately, the call is performed later. No error handling is possible.
void KDSoapClientInterface::setAuthentication | ( | const KDSoapAuthentication & | authentication | ) |
Provide the necessary authentication for this service.
authentication | the authentication data |
void KDSoapClientInterface::setHeader | ( | const QString & | name, |
const KDSoapMessage & | header | ||
) |
Sets a persistent header, which will be sent with any subsequent SOAP call.
name | internal name, used to replace any existing header previously set with this name |
header | the actual message to be sent |
void KDSoapClientInterface::setSoapVersion | ( | KDSoapClientInterface::SoapVersion | version | ) |
KDSoapClientInterface::SoapVersion KDSoapClientInterface::soapVersion | ( | ) | const |
Returns the version of SOAP being used in this instance.
QString KDSoapClientInterface::endPoint | ( | ) | const |
Returns the end point of the SOAP service.
void KDSoapClientInterface::setEndPoint | ( | const QString & | endPoint | ) |
Sets the end point of the SOAP service.
endPoint | the URL of the SOAP service, including http or https scheme, port number if needed, and path. Example: http://server/path/soap.php |
QNetworkCookieJar * KDSoapClientInterface::cookieJar | ( | ) | const |
Returns the cookie jar to use for the HTTP requests. If no cookie jar was set by setCookieJar previously, a default one will be returned, which belongs to the client interface (no need to delete it).
void KDSoapClientInterface::setCookieJar | ( | QNetworkCookieJar * | jar | ) |
Sets the cookie jar to use for the HTTP requests. The ownership of the cookie jar is NOT transferred, so that it is possible to share the same cookie jar between multiple client interfaces.
QNetworkProxy KDSoapClientInterface::proxy | ( | ) | const |
Returns the network proxy used for the HTTP requests.
void KDSoapClientInterface::setProxy | ( | const QNetworkProxy & | proxy | ) |
Sets the network proxy used for the HTTP requests.
void KDSoapClientInterface::setRawHTTPHeaders | ( | const QMap< QByteArray, QByteArray > & | headers | ) |
Sets additional HTTP headers in the requests
void KDSoapClientInterface::setStyle | ( | KDSoapClientInterface::Style | style | ) |
Sets the WSDL style used by this service.
KDSoapClientInterface::Style KDSoapClientInterface::style | ( | ) | const |
Returns the WSDL style used by this service.
KDSoapHeaders KDSoapClientInterface::lastResponseHeaders | ( | ) | const |
Returns the headers returned by the last synchronous call(). For asyncCall(), use KDSoapPendingCall::returnHeaders().
void KDSoapClientInterface::ignoreSslErrors | ( | ) |
Asks Qt to ignore ssl errors in https requests. Use this for testing only!
void KDSoapClientInterface::ignoreSslErrors | ( | const QList< QSslError > & | errors | ) |
ignoreSslErrors If this function is called, the SSL errors given in errors
will be ignored. Note that you can set the expected certificate in the SSL error. See QNetworkReply::ignoreSslErrors() for more information.
errors | list of errors to ignore |
KDSoapSslHandler * KDSoapClientInterface::sslHandler | ( | ) | const |
Returns the ssl handler object, which can be used for notification and handling of SSL errors.
Note that the notifications from synchronous calls will come in delayed, after the synchronous call failed. For this reason, it is not possible to ignore specific ssl errors during runtime when using synchronous calls. Use asynchronous calls instead.
QSslConfiguration KDSoapClientInterface::sslConfiguration | ( | ) | const |
Returns the ssl configuration used for outgoing connections
void KDSoapClientInterface::setSslConfiguration | ( | const QSslConfiguration & | config | ) |
Sets the ssl configuration used for outgoing connections
int KDSoapClientInterface::timeout | ( | ) | const |
Returns the timeout used for requests, in milliseconds. The default timeout is 30 minutes.
void KDSoapClientInterface::setTimeout | ( | int | msecs | ) |
Sets the timeout used for future requests, in milliseconds. A negative value disables the timeout feature.