AusweisApp2
Service.h
gehe zur Dokumentation dieser Datei
1 
5 #pragma once
6 
7 #include "AppUpdater.h"
8 #include "Env.h"
9 
10 #include <QTimer>
11 
12 namespace governikus
13 {
14 class Service
15  : public QObject
16 {
17  Q_OBJECT
18  friend class Env;
19 
20  private:
21  enum class UpdateType
22  {
23  APPCAST, PROVIDER, READER
24  };
25 
26  QTimer mTimer;
27  bool mUpdateScheduled;
28  bool mExplicitSuccessMessage;
29  const int mOneDayInMs = 1000 * 60 * 60 * 24;
30 
31  Service();
32  ~Service() override = default;
33  void doAppUpdate(UpdateType pType, bool pForceUpdate = false);
34 
35  private Q_SLOTS:
36  void onTimedUpdateTriggered();
37  void onProviderUpdateFinished();
38  void onAppcastFinished(bool pUpdateAvailable, const GlobalStatus& pError);
39 
40  public:
41  void updateAppcast();
42  [[nodiscard]] bool isUpdateScheduled() const;
43  Q_INVOKABLE void runUpdateIfNeeded();
44  [[nodiscard]] const AppUpdateData& getUpdateData() const;
45 
46  Q_SIGNALS:
47  void fireAppcastFinished(bool pUpdateAvailable, const GlobalStatus& pError);
48  void fireUpdateScheduled();
49 };
50 
51 } // namespace governikus
void updateAppcast()
Definition: Service.cpp:91
READER
Definition: MsgTypes.h:16
Definition: GlobalStatus.h:19
Implementation of ActivationContext for Intent based activation on Android systems.
Definition: ActivationContext.h:14
Definition: Service.h:14
Definition: AppUpdateData.h:21
void fireAppcastFinished(bool pUpdateAvailable, const GlobalStatus &pError)
bool isUpdateScheduled() const
Definition: Service.cpp:97
Q_INVOKABLE void runUpdateIfNeeded()
Definition: Service.cpp:103
const AppUpdateData & getUpdateData() const
Definition: Service.cpp:115
Definition: Env.h:43