AusweisApp2
Lade ...
Suche ...
Keine Treffer
MessageDispatcher.h
gehe zur Dokumentation dieser Datei
1
9#pragma once
10
12#include "messages/Msg.h"
13#include "messages/MsgContext.h"
14#include "messages/MsgHandler.h"
15
16#include <QJsonDocument>
17#include <QString>
18
19#include <functional>
20#include <initializer_list>
21
22
23class test_Message;
24
25namespace governikus
26{
27
29{
30 friend class ::test_Message;
31
32 private:
33 MsgDispatcherContext mContext;
34#ifndef QT_NO_DEBUG
35 using SkipStateApprovedHook = std::function<bool (const QString& pState)>;
36 SkipStateApprovedHook mSkipStateApprovedHook;
37#endif
38
39 Msg createForStateChange(MsgType pStateType);
40 MsgHandler createForCommand(const QJsonObject& pObj);
41
42 MsgHandler cancel();
43 MsgHandler accept();
44 MsgHandler interrupt();
45 MsgHandler handleCurrentState(MsgCmdType pCmdType, std::initializer_list<MsgType> pMsgType, const std::function<MsgHandler()>& pFunc) const;
46 MsgHandler handleInternalOnly(MsgCmdType pCmdType, const std::function<MsgHandler()>& pFunc) const;
47
48 public:
50
51 [[nodiscard]] Msg init(const QSharedPointer<WorkflowContext>& pWorkflowContext);
52 [[nodiscard]] Msg finish();
53 void reset();
54 [[nodiscard]] Msg processCommand(const QByteArray& pMsg);
55 [[nodiscard]] Msg processStateChange(const QString& pState);
56 [[nodiscard]] Msg processProgressChange() const;
57 [[nodiscard]] QVector<Msg> processReaderChange(const ReaderInfo& pInfo);
58
59#ifndef QT_NO_DEBUG
60 void setSkipStateApprovedHook(const SkipStateApprovedHook& pHook);
61#endif
62};
63
64
65} // namespace governikus
Definition: MessageDispatcher.h:29
QVector< Msg > processReaderChange(const ReaderInfo &pInfo)
Definition: MessageDispatcher.cpp:168
Msg processProgressChange() const
Definition: MessageDispatcher.cpp:151
Msg processStateChange(const QString &pState)
Definition: MessageDispatcher.cpp:130
Msg processCommand(const QByteArray &pMsg)
Definition: MessageDispatcher.cpp:219
void setSkipStateApprovedHook(const SkipStateApprovedHook &pHook)
Definition: MessageDispatcher.cpp:414
Msg init(const QSharedPointer< WorkflowContext > &pWorkflowContext)
Definition: MessageDispatcher.cpp:64
void reset()
Definition: MessageDispatcher.cpp:92
MessageDispatcher()
Definition: MessageDispatcher.cpp:55
Msg finish()
Definition: MessageDispatcher.cpp:101
Definition: MsgContext.h:78
Definition: MsgHandler.h:20
Definition: Msg.h:18
Definition: ReaderInfo.h:18
Implementation of GeneralAuthenticate response APDUs.
Definition: CommandApdu.h:16