AusweisApp2
HttpServerRequestor.h
gehe zur Dokumentation dieser Datei
1/*
2 * \brief Sends one time GET requests to server.
3 *
4 * \copyright Copyright (c) 2014-2022 Governikus GmbH & Co. KG, Germany
5 */
6
7#pragma once
8
9#include "NetworkManager.h"
10
11#include <QEventLoop>
12#include <QHostAddress>
13#include <QNetworkReply>
14#include <QSharedPointer>
15#include <QTimer>
16
17namespace governikus
18{
19
21 : public NetworkManager
22{
23 Q_OBJECT
24
26};
27
29 : public QObject
30{
31 Q_OBJECT
32
33 private:
34 QPointer<NetworkManager> mNetworkManager;
35 QEventLoop mEventLoop;
36 QTimer mTimer;
37
38 [[nodiscard]] QPointer<NetworkManager> getNetworkManager(bool pCustomNetworkManager);
39 [[nodiscard]] QSharedPointer<QNetworkReply> waitForReply(QSharedPointer<QNetworkReply> pReply, int pTimeOut);
40
41 public:
42 explicit HttpServerRequestor(bool pCustomNetworkManager = false);
43 ~HttpServerRequestor() override = default;
44
45 [[nodiscard]] QSharedPointer<QNetworkReply> getRequest(const QUrl& pUrl, int pTimeOut = 2000);
46 [[nodiscard]] QSharedPointer<QNetworkReply> postRequest(const QUrl& pUrl, const QByteArray& pData, const QString& pContentType, int pTimeOut = 2000);
47 [[nodiscard]] QSharedPointer<QNetworkReply> deleteRequest(const QUrl& pUrl, int pTimeOut = 2000);
48
49 static QUrl createUrl(const QString& pQuery, quint16 pPort, const QHostAddress& pHost, const QString& pPath = QStringLiteral("/eID-Client"));
50
51 private Q_SLOTS:
52 void finished();
53};
54
55} // namespace governikus
Definition: HttpServerRequestor.h:30
QSharedPointer< QNetworkReply > getRequest(const QUrl &pUrl, int pTimeOut=2000)
Definition: HttpServerRequestor.cpp:55
HttpServerRequestor(bool pCustomNetworkManager=false)
Definition: HttpServerRequestor.cpp:17
QSharedPointer< QNetworkReply > deleteRequest(const QUrl &pUrl, int pTimeOut=2000)
Definition: HttpServerRequestor.cpp:74
static QUrl createUrl(const QString &pQuery, quint16 pPort, const QHostAddress &pHost, const QString &pPath=QStringLiteral("/eID-Client"))
Definition: HttpServerRequestor.cpp:43
~HttpServerRequestor() override=default
QSharedPointer< QNetworkReply > postRequest(const QUrl &pUrl, const QByteArray &pData, const QString &pContentType, int pTimeOut=2000)
Definition: HttpServerRequestor.cpp:64
Definition: NetworkManager.h:28
NetworkManager()
Definition: NetworkManager.cpp:30
Definition: HttpServerRequestor.h:22
A simple template renderer.
Definition: ActivationContext.h:15