14#include <QScopedPointer>
22class test_WebserviceActivationHandler;
23class test_WebserviceActivationContext;
32 friend class ::test_WebserviceActivationHandler;
33 friend class ::test_WebserviceActivationContext;
37 [[nodiscard]]
static int onMessageBegin(
http_parser* pParser);
38 [[nodiscard]]
static int onMessageComplete(
http_parser* pParser);
39 [[nodiscard]]
static int onHeadersComplete(
http_parser* pParser);
40 [[nodiscard]]
static int onHeaderField(
http_parser* pParser,
const char*
const pPos,
size_t pLength);
41 [[nodiscard]]
static int onHeaderValue(
http_parser* pParser,
const char*
const pPos,
size_t pLength);
42 [[nodiscard]]
static int onBody(
http_parser* pParser,
const char*
const pPos,
size_t pLength);
43 [[nodiscard]]
static int onUrl(
http_parser* pParser,
const char*
const pPos,
size_t pLength);
45 static inline void add(QByteArray& pDest,
const char*
const pPos,
size_t pLength)
47 pDest += QByteArray(pPos,
static_cast<int>(pLength));
52 QMap<QByteArray, QByteArray> mHeader;
54#if (QT_VERSION < QT_VERSION_CHECK(6, 1, 0))
55 QScopedPointer<QTcpSocket, QScopedPointerDeleteLater> mSocket;
57 std::unique_ptr<QTcpSocket, QScopedPointerDeleteLater> mSocket;
62 bool mSocketDisconnected;
64 QByteArray mCurrentHeaderField;
65 QByteArray mCurrentHeaderValue;
70 HttpRequest(QTcpSocket* pSocket, QObject* pParent =
nullptr);
75 [[nodiscard]] QByteArray
getMethod()
const;
78 [[nodiscard]] QByteArray
getHeader(
const QByteArray& pKey)
const;
79 [[nodiscard]]
const QMap<QByteArray, QByteArray>&
getHeader()
const;
80 [[nodiscard]] QUrl
getUrl()
const;
81 [[nodiscard]]
const QByteArray&
getBody()
const;
89 void onSocketDisconnected();
Definition: HttpRequest.h:30
QTcpSocket * take()
Definition: HttpRequest.cpp:48
bool isConnected() const
Definition: HttpRequest.cpp:79
void fireMessageComplete(HttpRequest *pSelf)
bool send(const HttpResponse &pResponse)
Definition: HttpRequest.cpp:127
HttpRequest(QTcpSocket *pSocket, QObject *pParent=nullptr)
Definition: HttpRequest.cpp:15
QUrl getUrl() const
Definition: HttpRequest.cpp:115
const QMap< QByteArray, QByteArray > & getHeader() const
Definition: HttpRequest.cpp:109
const QByteArray & getBody() const
Definition: HttpRequest.cpp:121
~HttpRequest() override
Definition: HttpRequest.cpp:70
http_method getHttpMethod() const
Definition: HttpRequest.cpp:91
bool isUpgrade() const
Definition: HttpRequest.cpp:97
QByteArray getMethod() const
Definition: HttpRequest.cpp:85
Definition: HttpResponse.h:17
Definition: HttpServer.h:22
http_method
Definition: http_parser.h:208
A simple template renderer.
Definition: ActivationContext.h:15
Definition: http_parser.h:328
Definition: http_parser.h:296