AusweisApp
Lade ...
Suche ...
Keine Treffer
AppController.h
gehe zur Dokumentation dieser Datei
1
5#pragma once
6
7#include "EnumHelper.h"
8#include "UiPlugin.h"
9#include "WorkflowRequest.h"
10
11#include <QAbstractNativeEventFilter>
12#include <QAuthenticator>
13#include <QNetworkProxy>
14#include <QSharedPointer>
15
16
17class test_AppController;
18
19
20namespace governikus
21{
22class WorkflowController;
23class CommandLineParser;
24
26 : public QObject
27 , public QAbstractNativeEventFilter
28{
32 friend int initApp(int&, char**);
34
35 private:
36 static bool cShowUi;
37 QSharedPointer<WorkflowRequest> mActiveWorkflow;
38 QSharedPointer<WorkflowRequest> mWaitingRequest;
39 bool mShutdownRunning;
40 const UiPlugin* mUiDomination;
41 bool mRestartApplication;
42 int mExitCode;
43
44 [[nodiscard]] bool canStartNewWorkflow() const;
45 void completeShutdown();
46 void waitForNetworkConnections(const std::function<void()>& pExitFunc);
47
48 public:
50
51 bool eventFilter(QObject* pObj, QEvent* pEvent) override;
53
54 void start();
55
57
66 void fireHideUi();
72 void fireUiDomination(const UiPlugin* pUi, const QString& pInformation, bool pAccepted);
74
76 void doShutdown(int pExitCode = EXIT_SUCCESS);
77 void onUiPlugin(const UiPlugin* pPlugin) const;
78 void onWorkflowFinished();
79 void onWorkflowRequested(const QSharedPointer<WorkflowRequest>& pRequest);
80 void onCloseReminderFinished(bool pDontRemindAgain) const;
81 void onLanguageChanged();
82 void onUiDominationRequested(const UiPlugin* pUi, const QString& pInformation);
83 void onUiDominationRelease();
84 void onRestartApplicationRequested();
85
86 private:
87 bool startNewWorkflow(const QSharedPointer<WorkflowRequest>& pRequest);
88 static void clearCacheFolders();
89
90};
91
92} // namespace governikus
Definition AppController.h:28
bool nativeEventFilter(const QByteArray &pEventType, void *pMessage, qintptr *pResult) override
Definition AppController.cpp:490
bool shouldApplicationRestart() const
Definition AppController.cpp:182
void fireWorkflowStarted(const QSharedPointer< WorkflowRequest > &pRequest)
void fireUiDomination(const UiPlugin *pUi, const QString &pInformation, bool pAccepted)
void fireProxyAuthenticationRequired(const QNetworkProxy &pProxy, QAuthenticator *pAuthenticator)
void fireShowUserInformation(const QString &pInformationMessage)
void start()
Definition AppController.cpp:114
void fireWorkflowFinished(const QSharedPointer< WorkflowRequest > &pRequest)
friend int initApp(int &, char **)
bool eventFilter(QObject *pObj, QEvent *pEvent) override
Definition AppController.cpp:79
void fireWorkflowUnhandled(const QSharedPointer< WorkflowRequest > &pRequest)
void fireShowUi(UiModule pModule)
friend class ::test_AppController
Definition AppController.h:31
Definition CommandLineParser.h:14
Definition WorkflowRequest.h:26
Defines the AccessRight and AccessRole enum.
Definition CommandApdu.h:17
QSharedPointer< T > decodeObject(const QByteArray &pData, bool pLogging=true)
Template function for decoding an OpenSSL type from DER encoded QByteArray.
Definition ASN1TemplateUtil.h:112