cutelyst  4.8.0
A C++ Web Framework built on top of Qt, using the simple approach of Catalyst (Perl) framework.
useragent.h
1 /*
2  * SPDX-FileCopyrightText: (C) 2019-2022 Daniel Nicoletti <dantti12@gmail.com>
3  * SPDX-License-Identifier: BSD-3-Clause
4  */
5 #ifndef C_USERAGENT_H
6 #define C_USERAGENT_H
7 
8 #include <Cutelyst/Plugins/useragent_export.h>
9 
10 #include <QNetworkReply>
11 
12 class QIODevice;
13 class QJsonArray;
14 class QJsonObject;
15 class QJsonDocument;
16 class QHttpMultiPart;
17 class QNetworkRequest;
19 
20 namespace Cutelyst {
21 
22 class Context;
23 class Request;
24 
45 namespace UA {
46 
50 CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkAccessManager *networkAccessManager();
51 
58 CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply *head(const QNetworkRequest &request);
59 
67 CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply *get(const QNetworkRequest &request);
68 
80 CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply *post(const QNetworkRequest &request,
81  QIODevice *data);
82 
88 CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply *post(const QNetworkRequest &request,
89  const QByteArray &data);
90 
106 CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply *put(const QNetworkRequest &request,
107  QIODevice *data);
108 
114 CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply *put(const QNetworkRequest &request,
115  const QByteArray &data);
116 
122 CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply *deleteResource(const QNetworkRequest &request);
123 
139 CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply *sendCustomRequest(const QNetworkRequest &request,
140  const QByteArray &verb,
141  QIODevice *data = nullptr);
142 
148 CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply *sendCustomRequest(const QNetworkRequest &request,
149  const QByteArray &verb,
150  const QByteArray &data);
151 
159 CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply *post(const QNetworkRequest &request,
160  QHttpMultiPart *multiPart);
161 
169 CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply *put(const QNetworkRequest &request,
170  QHttpMultiPart *multiPart);
171 
181 CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply *sendCustomRequest(const QNetworkRequest &request,
182  const QByteArray &verb,
183  QHttpMultiPart *multiPart);
184 
191 CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply *postJson(const QNetworkRequest &request,
192  const QJsonDocument &doc);
193 
200 CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply *putJson(const QNetworkRequest &request,
201  const QJsonDocument &doc);
202 
209 CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply *
210  sendCustomRequestJson(const QNetworkRequest &request,
211  const QByteArray &verb,
212  const QJsonDocument &doc);
213 
220 CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply *postJsonObject(const QNetworkRequest &request,
221  const QJsonObject &object);
222 
229 CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply *putJsonObject(const QNetworkRequest &request,
230  const QJsonObject &object);
231 
238 CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply *
240  const QByteArray &verb,
241  const QJsonObject &object);
242 
249 CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply *postJsonArray(const QNetworkRequest &request,
250  const QJsonArray &array);
251 
258 CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply *putJsonArray(const QNetworkRequest &request,
259  const QJsonArray &array);
260 
267 CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply *
269  const QByteArray &verb,
270  const QJsonArray &array);
271 
276 CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply *forwardRequest(Request *request,
277  const QUrl &destination);
278 
283 CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply *forwardRequestResponse(Context *c,
284  const QUrl &destination);
285 
290 CUTELYST_PLUGIN_USERAGENT_EXPORT void forwardAsync(Context *c, const QUrl &destination);
291 } // namespace UA
292 
293 } // namespace Cutelyst
294 
295 #endif // C_USERAGENT_H
CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply * putJsonObject(const QNetworkRequest &request, const QJsonObject &object)
Definition: useragent.cpp:130
CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply * forwardRequest(Request *request, const QUrl &destination)
Definition: useragent.cpp:179
CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply * head(const QNetworkRequest &request)
Definition: useragent.cpp:30
CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply * post(const QNetworkRequest &request, QIODevice *data)
Definition: useragent.cpp:40
The Cutelyst Context.
Definition: context.h:42
CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply * deleteResource(const QNetworkRequest &request)
Definition: useragent.cpp:60
CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply * sendCustomRequest(const QNetworkRequest &request, const QByteArray &verb, QIODevice *data=nullptr)
Definition: useragent.cpp:66
CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply * putJsonArray(const QNetworkRequest &request, const QJsonArray &array)
Definition: useragent.cpp:159
CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply * sendCustomRequestJson(const QNetworkRequest &request, const QByteArray &verb, const QJsonDocument &doc)
Definition: useragent.cpp:111
CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkAccessManager * networkAccessManager()
Definition: useragent.cpp:23
The Cutelyst namespace holds all public Cutelyst API.
CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply * postJsonArray(const QNetworkRequest &request, const QJsonArray &array)
Definition: useragent.cpp:150
CUTELYST_PLUGIN_USERAGENT_EXPORT void forwardAsync(Context *c, const QUrl &destination)
Definition: useragent.cpp:215
CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply * sendCustomRequestJsonArray(const QNetworkRequest &request, const QByteArray &verb, const QJsonArray &array)
Definition: useragent.cpp:168
CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply * forwardRequestResponse(Context *c, const QUrl &destination)
Definition: useragent.cpp:199
CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply * put(const QNetworkRequest &request, QIODevice *data)
Definition: useragent.cpp:50
CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply * putJson(const QNetworkRequest &request, const QJsonDocument &doc)
Definition: useragent.cpp:103
CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply * postJsonObject(const QNetworkRequest &request, const QJsonObject &object)
Definition: useragent.cpp:121
CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply * sendCustomRequestJsonObject(const QNetworkRequest &request, const QByteArray &verb, const QJsonObject &object)
Definition: useragent.cpp:139
CUTELYST_PLUGIN_USERAGENT_EXPORT QNetworkReply * postJson(const QNetworkRequest &request, const QJsonDocument &doc)
Definition: useragent.cpp:95
A request.
Definition: request.h:41