AusweisApp2
MsgHandler.h
gehe zur Dokumentation dieser Datei
1 
7 #pragma once
8 
9 #include "Msg.h"
10 #include "MsgTypes.h"
11 #include "SmartCardDefinitions.h"
12 
13 #include <QJsonObject>
14 
15 namespace governikus
16 {
18 {
19  private:
20  const MsgType mType;
21  bool mVoid;
22 
23  MsgHandler();
24 
25  protected:
26  QJsonObject mJsonObject;
27 
28  explicit MsgHandler(MsgType pType);
29  explicit MsgHandler(MsgType pType, const char* const pKey, const QString& pValue);
30  explicit MsgHandler(MsgType pType, const char* const pKey, const QLatin1String pValue);
31 
32  void setValue(const QLatin1String pKey, const QString& pValue);
33  void setValue(const char* const pKey, const QString& pValue);
34  void setValue(const QLatin1String pKey, const QLatin1String pValue);
35  void setValue(const char* const pKey, const QLatin1String pValue);
36 
37  void setVoid(bool pVoid = true);
38 
39  public:
40  static const MsgHandler Void;
41  static const MsgLevel DEFAULT_MSG_LEVEL;
42  static MsgType getStateMsgType(const QString& pState, PacePasswordId pPasswordId);
43 
44  [[nodiscard]] QByteArray toJson() const;
45  [[nodiscard]] QByteArray getOutput() const;
46  [[nodiscard]] bool isVoid() const;
47  [[nodiscard]] MsgType getType() const;
48 
49  void setRequest(const QJsonObject& pRequest);
50 
51  operator Msg() const;
52 };
53 
54 inline QDebug operator<<(QDebug pDbg, const MsgHandler& pMsg)
55 {
56  QDebugStateSaver saver(pDbg);
57  pDbg << pMsg.getType();
58  return pDbg.space();
59 }
60 
61 
62 } // namespace governikus
Definition: MsgHandler.h:18
QJsonObject mJsonObject
Definition: MsgHandler.h:26
bool isVoid() const
Definition: MsgHandler.cpp:103
static MsgType getStateMsgType(const QString &pState, PacePasswordId pPasswordId)
Definition: MsgHandler.cpp:21
void setValue(const QLatin1String pKey, const QString &pValue)
Definition: MsgHandler.cpp:154
static const MsgLevel DEFAULT_MSG_LEVEL
Definition: MsgHandler.h:41
QByteArray getOutput() const
Definition: MsgHandler.cpp:92
void setRequest(const QJsonObject &pRequest)
Definition: MsgHandler.cpp:115
static const MsgHandler Void
Definition: MsgHandler.h:40
void setVoid(bool pVoid=true)
Definition: MsgHandler.cpp:148
QByteArray toJson() const
Definition: MsgHandler.cpp:85
MsgType getType() const
Definition: MsgHandler.cpp:109
Definition: Msg.h:16
A simple template renderer.
Definition: ActivationContext.h:15
QDebug operator<<(QDebug pDbg, const CommandApdu &pCommandApdu)
Definition: CommandApdu.h:89