AusweisApp2
MessageDispatcher.h
gehe zur Dokumentation dieser Datei
1 
7 #pragma once
8 
9 #include "context/AuthContext.h"
11 #include "messages/MsgContext.h"
12 #include "messages/MsgHandler.h"
13 
14 #include <QJsonDocument>
15 #include <QString>
16 
17 #include <functional>
18 
19 class test_Message;
20 
21 namespace governikus
22 {
23 
25 {
26  private:
27  friend class ::test_Message;
28 
29  MsgDispatcherContext mContext;
30 
31  MsgHandler createForStateChange(MsgType pStateType);
32  MsgHandler createForCommand(const QJsonObject& pObj);
33 
34  MsgHandler cancel();
35  MsgHandler accept();
36  MsgHandler handleCurrentState(MsgCmdType pCmdType, MsgType pMsgType, const std::function<MsgHandler()>& pFunc);
37  MsgHandler handleInternalOnly(MsgCmdType pCmdType, const std::function<MsgHandler()>& pFunc);
38 
39  public:
40  class Msg final
41  {
42  friend class MessageDispatcher;
43  const MsgType mType;
44  const QByteArray mData;
45 
46  Msg(const MsgHandler& pHandler);
47 
48  public:
49  operator QByteArray() const;
50  operator MsgType() const;
51  };
52 
54 
55  QByteArray init(const QSharedPointer<WorkflowContext>& pWorkflowContext);
56  QByteArray finish();
57  void reset();
58  Msg processCommand(const QByteArray& pMsg);
59  QByteArray processStateChange(const QString& pState);
60 
61  QByteArray createMsgReader(const QString& pName) const;
62 };
63 
64 } // namespace governikus
Definition: MsgContext.h:42
MessageDispatcher()
Definition: MessageDispatcher.cpp:34
Definition: MessageDispatcher.h:40
QByteArray processStateChange(const QString &pState)
Definition: MessageDispatcher.cpp:83
QByteArray init(const QSharedPointer< WorkflowContext > &pWorkflowContext)
Definition: MessageDispatcher.cpp:40
void reset()
Definition: MessageDispatcher.cpp:56
QByteArray createMsgReader(const QString &pName) const
Definition: MessageDispatcher.cpp:62
Implementation of ActivationContext for Intent based activation on Android systems.
Definition: ActivationContext.h:14
Definition: MessageDispatcher.h:24
QByteArray finish()
Definition: MessageDispatcher.cpp:68
Msg processCommand(const QByteArray &pMsg)
Definition: MessageDispatcher.cpp:123
Definition: MsgHandler.h:16