KDSOAP 1.2
|
00001 /**************************************************************************** 00002 ** Copyright (C) 2010-2012 Klaralvdalens Datakonsult AB. All rights reserved. 00003 ** 00004 ** This file is part of the KD Soap library. 00005 ** 00006 ** Licensees holding valid commercial KD Soap licenses may use this file in 00007 ** accordance with the KD Soap Commercial License Agreement provided with 00008 ** the Software. 00009 ** 00010 ** 00011 ** This file may be distributed and/or modified under the terms of the 00012 ** GNU General Public License version 2 and version 3 as published by the 00013 ** Free Software Foundation and appearing in the file LICENSE.GPL.txt included. 00014 ** 00015 ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE 00016 ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 00017 ** 00018 ** Contact info@kdab.com if any conditions of this licensing are not 00019 ** clear to you. 00020 ** 00021 **********************************************************************/ 00022 #ifndef KDSOAPCLIENTINTERFACE_H 00023 #define KDSOAPCLIENTINTERFACE_H 00024 00025 #include <QtCore/QtGlobal> 00026 #include <QtCore/QString> 00027 #include "KDSoapMessage.h" 00028 #include "KDSoapPendingCall.h" 00029 00030 class KDSoapAuthentication; 00031 class QNetworkCookieJar; 00032 class QNetworkProxy; 00033 00056 class KDSOAP_EXPORT KDSoapClientInterface 00057 { 00058 public: 00063 enum SoapVersion { 00065 SOAP1_1 = 1, 00067 SOAP1_2 = 2 00068 }; 00069 00080 explicit KDSoapClientInterface(const QString& endPoint, const QString& messageNamespace); 00085 ~KDSoapClientInterface(); 00086 00129 KDSoapPendingCall asyncCall(const QString& method, const KDSoapMessage &message, 00130 const QString& soapAction = QString(), 00131 const KDSoapHeaders& headers = KDSoapHeaders()); 00132 00145 KDSoapMessage call(const QString& method, const KDSoapMessage &message, 00146 const QString& soapAction = QString(), 00147 const KDSoapHeaders& headers = KDSoapHeaders()); 00148 00160 void callNoReply(const QString& method, const KDSoapMessage &message, 00161 const QString& soapAction = QString(), 00162 const KDSoapHeaders& headers = KDSoapHeaders()); 00163 00168 void setAuthentication(const KDSoapAuthentication& authentication); 00169 00175 void setHeader(const QString& name, const KDSoapMessage& header); 00176 00182 void setSoapVersion(SoapVersion version); 00183 00187 SoapVersion soapVersion(); 00188 00193 QString endPoint() const; 00194 00201 void setEndPoint(const QString& endPoint); 00202 00209 QNetworkCookieJar* cookieJar() const; 00210 00217 void setCookieJar(QNetworkCookieJar* jar); 00218 00224 QNetworkProxy proxy() const; 00225 00231 void setProxy( const QNetworkProxy & proxy ); 00232 00246 enum Style { 00247 RPCStyle, 00248 DocumentStyle 00249 }; 00250 00255 void setStyle(Style style); 00256 00261 Style style() const; 00262 00268 KDSoapHeaders lastResponseHeaders() const; 00269 00274 void ignoreSslErrors(); 00275 00276 private: 00277 friend class KDSoapThreadTask; 00278 00279 class Private; 00280 Private * const d; 00281 }; 00282 00283 #endif // KDSOAPCLIENTINTERFACE_H