KD SOAP API Documentation 2.2
Loading...
Searching...
No Matches
KDSoapServerSocket_p.h
Go to the documentation of this file.
1/****************************************************************************
2**
3** This file is part of the KD Soap project.
4**
5** SPDX-FileCopyrightText: 2010 Klarälvdalens Datakonsult AB, a KDAB Group company <info@kdab.com>
6**
7** SPDX-License-Identifier: MIT
8**
9****************************************************************************/
10#ifndef KDSOAPSERVERSOCKET_P_H
11#define KDSOAPSERVERSOCKET_P_H
12
13#include <QtGlobal>
14
15#include <QTcpSocket> //may define QT_NO_SSL
16#ifndef QT_NO_SSL
17#include <QSslSocket>
18#endif
19
20#include <QMap>
21QT_BEGIN_NAMESPACE
22class QObject;
26class KDSoapMessage;
27class KDSoapHeaders;
28
31 : public QSslSocket
32#else
33 : public QTcpSocket
34#endif
35{
37public:
40
41 void setResponseDelayed();
46
47private Q_SLOTS:
48 void slotReadyRead();
49
50private:
51 void handleRequest(const QMap<QByteArray, QByteArray> &headers, const QByteArray &receivedData);
52 bool handleWsdlDownload();
53 bool handleFileDownload(KDSoapServerObjectInterface *serverObjectInterface, const QString &path);
55 const KDSoapHeaders &requestHeaders, const QByteArray &soapAction, const QString &path);
56 void handleError(KDSoapMessage &replyMsg, const char *errorCode, const QString &error);
57 void setSocketEnabled(bool enabled);
58 void writeXML(const QByteArray &xmlResponse, bool isFault);
60
61 KDSoapSocketList *m_owner;
62 QObject *m_serverObject;
63 bool m_delayedResponse;
64 bool m_doDebug;
65 bool m_socketEnabled;
66 bool m_receivedData;
67
68 // Current request being assembled
69 bool m_useRawXML;
70 int m_bytesReceived;
71 int m_chunkStart;
72 QMap<QByteArray, QByteArray> m_httpHeaders;
73 QByteArray m_requestBuffer;
74 QByteArray m_decodedRequestBuffer; // used for chunked transfer encoding only
75
76 // Data for the current call (stored here for delayed replies)
77 QString m_messageNamespace;
78 QString m_method;
79};
80
81#endif // KDSOAPSERVERSOCKET_P_H
void sendDelayedReply(KDSoapServerObjectInterface *serverObjectInterface, const KDSoapMessage &replyMsg)
void socketDeleted(KDSoapServerSocket *)
void sendReply(KDSoapServerObjectInterface *serverObjectInterface, const KDSoapMessage &replyMsg)
QAbstractSocket::SocketError error() const const
Q_OBJECTQ_OBJECT
Q_SIGNALSQ_SIGNALS
Q_SLOTSQ_SLOTS
T qobject_cast(QObject *object)

© 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 Sat Apr 20 2024 00:04:25 for KD SOAP API Documentation by doxygen 1.9.8