AusweisApp
 
Lade ...
Suche ...
Keine Treffer
AbstractState.h
gehe zur Dokumentation dieser Datei
1
4
5#pragma once
6
7#include "FailureCode.h"
8#include "StateBuilder.h"
10
11#include <QSharedPointer>
12#include <QState>
13
14
15class test_StateChangePinIfd;
16class test_StateChangeSmartPin;
17class test_StateEstablishPaceChannelIfd;
18class test_StateProcessIfdMessages;
19class test_StateChangePin;
20class test_StateDestroyPace;
21class test_StateDidAuthenticateEac1;
22class test_StateDidAuthenticateEac2;
23class test_StateGetTcToken;
24class test_StateTransmit;
25
26
27namespace governikus
28{
29
31 : public QState
32{
33 Q_OBJECT
34 friend class ::test_StateChangePinIfd;
35 friend class ::test_StateChangeSmartPin;
36 friend class ::test_StateEstablishPaceChannelIfd;
37 friend class ::test_StateProcessIfdMessages;
38 friend class ::test_StateChangePin;
39 friend class ::test_StateDestroyPace;
40 friend class ::test_StateDidAuthenticateEac1;
41 friend class ::test_StateDidAuthenticateEac2;
42 friend class ::test_StateGetTcToken;
43 friend class ::test_StateTransmit;
44 friend class ::test_StateChangeSmartPin;
45
46 private:
47 const QSharedPointer<WorkflowContext> mContext;
48 QList<QMetaObject::Connection> mConnections;
49 bool mAbortOnCardRemoved;
50 bool mHandleNfcStop;
51 bool mKeepCardConnectionAlive;
52
53 virtual void run() = 0;
54
55 protected:
56 explicit AbstractState(const QSharedPointer<WorkflowContext>& pContext);
57
59 void setHandleNfcStop();
61
62 void onEntry(QEvent* pEvent) override;
63 void onExit(QEvent* pEvent) override;
64
65 void operator<<(const QMetaObject::Connection& connection);
66
67 void clearConnections();
68 bool isCancellationByUser() const;
69 void updateStatus(const GlobalStatus& pStatus);
70 void updateStartPaosResult(const ECardApiResult& pStartPaosResult);
71
72 void stopNfcScanIfNecessary(const QString& pError = QString()) const;
73
74 public:
75 ~AbstractState() override = default;
76
77 [[nodiscard]] QString getStateName() const;
78
79 Q_SIGNALS:
81 void fireAbort(const FailureCode& pFailure);
82
83 private Q_SLOTS:
84 void onAbort(const FailureCode& pFailure) const;
85 void onReaderStatusChanged(const ReaderManagerPluginInfo& pInfo) const;
86
87 public Q_SLOTS:
88 void onStateApprovedChanged(bool pApproved);
89 virtual void onUserCancelled();
90 void onCardRemoved(const ReaderInfo& pInfo);
91};
92
93} // namespace governikus
virtual void onUserCancelled()
Definition AbstractState.cpp:154
void clearConnections()
Definition AbstractState.cpp:138
void onCardRemoved(const ReaderInfo &pInfo)
Definition AbstractState.cpp:165
QString getStateName() const
Definition AbstractState.cpp:52
void onEntry(QEvent *pEvent) override
Definition AbstractState.cpp:79
void setHandleNfcStop()
Definition AbstractState.cpp:40
void fireAbort(const FailureCode &pFailure)
void stopNfcScanIfNecessary(const QString &pError=QString()) const
Definition AbstractState.cpp:196
void onStateApprovedChanged(bool pApproved)
Definition AbstractState.cpp:69
void onExit(QEvent *pEvent) override
Definition AbstractState.cpp:117
void setAbortOnCardRemoved()
Definition AbstractState.cpp:34
void updateStartPaosResult(const ECardApiResult &pStartPaosResult)
Definition AbstractState.cpp:186
void setKeepCardConnectionAlive()
Definition AbstractState.cpp:46
~AbstractState() override=default
AbstractState(const QSharedPointer< WorkflowContext > &pContext)
Definition AbstractState.cpp:22
void operator<<(const QMetaObject::Connection &connection)
Definition AbstractState.cpp:132
bool isCancellationByUser() const
Definition AbstractState.cpp:148
void updateStatus(const GlobalStatus &pStatus)
Definition AbstractState.cpp:177
Definition ECardApiResult.h:32
Definition FailureCode.h:18
Definition ReaderInfo.h:18
Defines the AccessRight and AccessRole enum.
Definition CommandApdu.h:17