AusweisApp2
Downloader.h
gehe zur Dokumentation dieser Datei
1 
8 #pragma once
9 
10 #include "Env.h"
11 #include "GlobalStatus.h"
12 #include "NetworkManager.h"
13 
14 #include <QNetworkReply>
15 #include <QNetworkRequest>
16 #include <QQueue>
17 #include <QSharedPointer>
18 #include <QSslCipher>
19 #include <QUrl>
20 
21 namespace governikus
22 {
24  : public QObject
25 {
26  Q_OBJECT
27  friend class Env;
28 
29  private:
30  QSharedPointer<QNetworkReply> mCurrentReply;
31  QQueue<QSharedPointer<QNetworkRequest>> mPendingRequests;
32 
33  void scheduleDownload(QSharedPointer<QNetworkRequest> pDownloadRequest);
34  void startDownloadIfPending();
35 
36  protected:
37  Downloader();
38  ~Downloader() override;
39 
40  private Q_SLOTS:
41  void onMetadataChanged();
42  void onNetworkReplyFinished();
43  void onNetworkReplyProgress(qint64 pBytesReceived, qint64 pBytesTotal);
44 
45  public:
46  bool abort(const QUrl& pUpdateUrl);
47  virtual void download(const QUrl& pUpdateUrl, const QDateTime& pCurrentTimestamp = QDateTime());
48 
49  Q_SIGNALS:
50  void fireDownloadProgress(const QUrl& pUpdateUrl, qint64 pBytesReceived, qint64 pBytesTotal);
51  void fireDownloadSuccess(const QUrl& pUpdateUrl, const QDateTime& pNewTimestamp, const QByteArray& pData);
52  void fireDownloadFailed(const QUrl& pUpdateUrl, GlobalStatus::Code pErrorCode);
53  void fireDownloadUnnecessary(const QUrl& pUpdateUrl);
54 };
55 
56 } // namespace governikus
Definition: Downloader.h:25
~Downloader() override
Definition: Downloader.cpp:149
Downloader()
Definition: Downloader.cpp:142
void fireDownloadProgress(const QUrl &pUpdateUrl, qint64 pBytesReceived, qint64 pBytesTotal)
void fireDownloadUnnecessary(const QUrl &pUpdateUrl)
virtual void download(const QUrl &pUpdateUrl, const QDateTime &pCurrentTimestamp=QDateTime())
Definition: Downloader.cpp:190
bool abort(const QUrl &pUpdateUrl)
Definition: Downloader.cpp:159
void fireDownloadSuccess(const QUrl &pUpdateUrl, const QDateTime &pNewTimestamp, const QByteArray &pData)
void fireDownloadFailed(const QUrl &pUpdateUrl, GlobalStatus::Code pErrorCode)
Definition: Env.h:44
Code
Definition: GlobalStatus.h:26
Implementation of GeneralAuthenticate response APDUs.
Definition: CommandApdu.h:16