AusweisApp2
RemoteDispatcher.h
gehe zur Dokumentation dieser Datei
1 
9 #pragma once
10 
11 #include "DataChannel.h"
12 #include "GlobalStatus.h"
13 #include "messages/IfdVersion.h"
14 #include "messages/RemoteMessage.h"
15 
16 #include <QObject>
17 #include <QSharedPointer>
18 
19 
20 namespace governikus
21 {
22 
24  : public QObject
25 {
26  Q_OBJECT
27 
28  private:
29  const QSharedPointer<DataChannel> mDataChannel;
30 
31  virtual bool processContext(RemoteCardMessageType pMsgType, const QJsonObject& pMsgObject) = 0;
32 
33  private Q_SLOTS:
34  void onReceived(const QByteArray& pDataBlock);
35  void onClosed(GlobalStatus::Code pCloseCode);
36 
37  protected:
39  QString mContextHandle;
40 
41  public:
42  explicit RemoteDispatcher(IfdVersion::Version pVersion, const QSharedPointer<DataChannel>& pDataChannel);
43  ~RemoteDispatcher() override;
44 
45  [[nodiscard]] virtual QString getId() const;
46  [[nodiscard]] virtual const QString& getContextHandle() const;
47  void saveRemoteNameInSettings(const QString& pName);
48 
49  void close();
50  Q_INVOKABLE virtual void send(const QSharedPointer<const RemoteMessage>& pMessage);
51 
52  Q_SIGNALS:
53  void fireReceived(RemoteCardMessageType pMessageType, const QJsonObject& pJsonObject, const QString& pId);
54  void fireClosed(GlobalStatus::Code pCloseCode, const QString& pId);
55 };
56 
57 } // namespace governikus
Code
Definition: GlobalStatus.h:26
Version
Definition: IfdVersion.h:17
Definition: RemoteDispatcher.h:25
RemoteDispatcher(IfdVersion::Version pVersion, const QSharedPointer< DataChannel > &pDataChannel)
virtual Q_INVOKABLE void send(const QSharedPointer< const RemoteMessage > &pMessage)
Definition: RemoteDispatcher.cpp:111
~RemoteDispatcher() override
Definition: RemoteDispatcher.cpp:39
void saveRemoteNameInSettings(const QString &pName)
Definition: RemoteDispatcher.cpp:102
IfdVersion::Version mVersion
Definition: RemoteDispatcher.h:38
void close()
Definition: RemoteDispatcher.cpp:127
virtual QString getId() const
Definition: RemoteDispatcher.cpp:85
virtual const QString & getContextHandle() const
Definition: RemoteDispatcher.cpp:96
QString mContextHandle
Definition: RemoteDispatcher.h:39
void fireReceived(RemoteCardMessageType pMessageType, const QJsonObject &pJsonObject, const QString &pId)
void fireClosed(GlobalStatus::Code pCloseCode, const QString &pId)
Implementation of ActivationContext for Intent based activation on Android systems.
Definition: ActivationContext.h:15