AusweisApp2
Lade ...
Suche ...
Keine Treffer
VolatileSettings.h
gehe zur Dokumentation dieser Datei
1
10#pragma once
11
12#include "Env.h"
13
14#include <QObject>
15
16#ifndef QT_NO_QDEBUG
17#include <QScopeGuard>
18
19#define SDK_MODE(pEnable)\
20 const auto sdkMode = Env::getSingleton<VolatileSettings>()->isUsedAsSDK();\
21 Env::getSingleton<VolatileSettings>()->setUsedAsSDK(pEnable);\
22 const auto sdkModeGuard = qScopeGuard([sdkMode] {\
23 Env::getSingleton<VolatileSettings>()->setUsedAsSDK(sdkMode);\
24 })
25
26#endif
27
28namespace governikus
29{
30
32{
33 Q_GADGET
34
35 friend class Env;
36
37 public:
39 {
40 // See JSON-SDK MsgHandlerAuth and MsgHandlerChangePin
41 QString mSessionStarted;
42 QString mSessionFailed;
43 QString mSessionSucceeded;
44 QString mSessionInProgress;
45
46 public:
47 Messages(const QString& pSessionStarted = QString(), const QString& pSessionFailed = QString(),
48 const QString& mSessionSucceeded = QString(), const QString& pSessionInProgress = QString());
49
50 [[nodiscard]] QString getSessionStarted() const;
51 [[nodiscard]] QString getSessionFailed() const;
52 [[nodiscard]] QString getSessionSucceeded() const;
53 [[nodiscard]] QString getSessionInProgress() const;
54 };
55
56 private:
57 static constexpr bool cHandleInterruptDefault = true;
58
59 bool mUsedAsSdk;
60 bool mHandleInterrupt;
61 Messages mMessages;
62
63 protected:
65 ~VolatileSettings() = default;
67
68 public:
69 [[nodiscard]] bool isUsedAsSDK() const;
70 void setUsedAsSDK(bool pSdk);
71
72 [[nodiscard]] bool handleInterrupt() const;
73 void setHandleInterrupt(bool pScan = cHandleInterruptDefault);
74
75 void setMessages(const Messages& pMessages = Messages());
76 [[nodiscard]] const Messages& getMessages() const;
77};
78
79
80} // namespace governikus
Definition: Env.h:44
Definition: VolatileSettings.h:39
QString getSessionSucceeded() const
Definition: VolatileSettings.cpp:38
QString getSessionStarted() const
Definition: VolatileSettings.cpp:26
Messages(const QString &pSessionStarted=QString(), const QString &pSessionFailed=QString(), const QString &mSessionSucceeded=QString(), const QString &pSessionInProgress=QString())
QString getSessionInProgress() const
Definition: VolatileSettings.cpp:44
QString getSessionFailed() const
Definition: VolatileSettings.cpp:32
Definition: VolatileSettings.h:32
bool handleInterrupt() const
Definition: VolatileSettings.cpp:70
void setUsedAsSDK(bool pSdk)
Definition: VolatileSettings.cpp:64
void setMessages(const Messages &pMessages=Messages())
Definition: VolatileSettings.cpp:82
static VolatileSettings & getInstance()
const Messages & getMessages() const
Definition: VolatileSettings.cpp:88
bool isUsedAsSDK() const
Definition: VolatileSettings.cpp:58
void setHandleInterrupt(bool pScan=cHandleInterruptDefault)
Definition: VolatileSettings.cpp:76
VolatileSettings()
Definition: VolatileSettings.cpp:50
Implementation of ActivationContext for Intent based activation on Android systems.
Definition: ActivationContext.h:15