KD SOAP  2.0.0
KDSoapClientInterface_p.h
1 /****************************************************************************
2 **
3 ** This file is part of the KD Soap library.
4 **
5 ** SPDX-FileCopyrightText: 2010-2021 Klarälvdalens Datakonsult AB, a KDAB Group company <info@kdab.com>
6 **
7 ** SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDAB-KDSoap OR LicenseRef-KDAB-KDSoap-US
8 **
9 ** Licensees holding valid commercial KD Soap licenses may use this file in
10 ** accordance with the KD Soap Commercial License Agreement provided with
11 ** the Software.
12 **
13 ** Contact info@kdab.com if any conditions of this licensing are not clear to you.
14 **
15 ****************************************************************************/
16 #ifndef KDSOAPCLIENTINTERFACE_P_H
17 #define KDSOAPCLIENTINTERFACE_P_H
18 
19 #include <QtNetwork/QSslConfiguration>
20 #include <QtNetwork/QNetworkAccessManager>
21 #include <QtNetwork/QNetworkCookieJar>
22 #include <QtCore/QXmlStreamWriter>
23 
24 #include "KDSoapClientInterface.h"
25 #include "KDSoapClientThread_p.h"
26 #include "KDSoapAuthentication.h"
27 QT_BEGIN_NAMESPACE
28 class QBuffer;
29 QT_END_NAMESPACE
30 class KDSoapMessage;
31 class KDSoapNamespacePrefixes;
32 
33 class KDSoapClientInterfacePrivate : public QObject
34 {
35  Q_OBJECT
36 public:
37  KDSoapClientInterfacePrivate();
38  ~KDSoapClientInterfacePrivate();
39 
40  // Warning: this accessManager is only used by asyncCall and callNoReply.
41  // For blocking calls, the thread has its own accessManager.
42  QNetworkAccessManager *m_accessManager;
43  QString m_endPoint;
44  QString m_messageNamespace;
45  KDSoapClientThread m_thread;
46  KDSoapAuthentication m_authentication;
47  QMap<QString, KDSoapMessage> m_persistentHeaders;
48  QMap<QByteArray, QByteArray> m_httpHeaders;
49  KDSoap::SoapVersion m_version;
51  bool m_ignoreSslErrors;
52  KDSoapHeaders m_lastResponseHeaders;
53 #ifndef QT_NO_SSL
54  QList<QSslError> m_ignoreErrorsList;
55  QSslConfiguration m_sslConfiguration;
56  KDSoapSslHandler *m_sslHandler;
57 #endif
58  int m_timeout;
59  bool m_sendSoapActionInHttpHeader = true;
60  bool m_sendSoapActionInWsAddressingHeader = false;
61 
62  QNetworkAccessManager *accessManager();
63  QNetworkRequest prepareRequest(const QString &method, const QString &action);
64  QBuffer *prepareRequestBuffer(const QString &method, const KDSoapMessage &message, const QString &soapAction, const KDSoapHeaders &headers);
65  void writeElementContents(KDSoapNamespacePrefixes &namespacePrefixes, QXmlStreamWriter &writer, const KDSoapValue &element, KDSoapMessage::Use use);
66  void writeChildren(KDSoapNamespacePrefixes &namespacePrefixes, QXmlStreamWriter &writer, const KDSoapValueList &args, KDSoapMessage::Use use);
67  void writeAttributes(QXmlStreamWriter &writer, const QList<KDSoapValue> &attributes);
68  void setupReply(QNetworkReply *reply);
69 
70 private Q_SLOTS:
71  void _kd_slotAuthenticationRequired(QNetworkReply *reply, QAuthenticator *authenticator);
72 };
73 
74 #endif // KDSOAPCLIENTINTERFACE_P_H
QObject::Q_OBJECT
Q_OBJECTQ_OBJECT
KDSoapHeaders
Definition: KDSoapMessage.h:192
QObject::Q_SLOTS
Q_SLOTSQ_SLOTS
KDSoapAuthentication
Definition: KDSoapAuthentication.h:37
KDSoapValue
Definition: KDSoapValue.h:66
KDSoapClientInterface::Style
Style
Definition: KDSoapClientInterface.h:258
QList< QSslError >
KDSoapSslHandler
A class for handling SSL errors during SOAP calls.
Definition: KDSoapSslHandler.h:37
QBuffer
KDSoapMessage
Definition: KDSoapMessage.h:35
KDSoapValue::Use
Use
Definition: KDSoapValue.h:272
QObject
QString
QXmlStreamWriter
KDSoapValueList
Definition: KDSoapValue.h:327
QMap< QString, KDSoapMessage >

© 2010-2021 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/
Generated on Wed Jun 30 2021 18:19:27 for KD SOAP by doxygen 1.8.20