AusweisApp2
LocalIfdReaderManagerPlugIn.h
gehe zur Dokumentation dieser Datei
1 
5 #pragma once
6 
7 
8 #include "EnumHelper.h"
10 #include "LocalIfdClient.h"
11 
12 #include <QTimer>
13 
14 namespace governikus
15 {
16 
17 defineEnumType(LocalIfdState
18  , CONNECTED
19  , DISCONNECTED
20  , INVALID_CERTIFICATE
21  , INCOMPATIBLE_VERSION
22  , NOT_INSTALLED
23  )
24 
25 class LocalIfdReaderManagerPlugIn
26  : public IfdReaderManagerPlugIn
27 {
28  Q_OBJECT
29  Q_PLUGIN_METADATA(IID "governikus.ReaderManagerPlugIn" FILE "metadata.json")
31 
32  public:
33  LocalIfdReaderManagerPlugIn();
34 
35  void startScan(bool pAutoConnect) override;
36  void stopScan(const QString& pError = QString()) override;
37 
38  protected:
39  bool isInitialPairing(const QString& pIfdName, const QString& pId) override;
40  LocalIfdClient* getIfdClient() override;
41  void addDispatcher(const QSharedPointer<IfdDispatcherClient>& pDispatcher) override;
42 
43  private Q_SLOTS:
44  void onLocalIfdConnectionClosed(GlobalStatus::Code pCloseCode, const QString& pId);
45 
46  private:
47  bool mServiceConnected;
48  [[nodiscard]] bool isAusweisApp2Installed();
49  void setState(LocalIfdState pState);
50  void updateState();
51 
52  private Q_SLOTS:
53  void connectToReader(const QSharedPointer<IfdListEntry> pIfdDevice);
54 };
55 
56 } // namespace governikus
Code
Definition: GlobalStatus.h:26
Definition: ReaderManagerPlugIn.h:23
A simple template renderer.
Definition: ActivationContext.h:15
defineEnumType(ActivationType, UNKNOWN, SHOWUI, STATUS, TCTOKENURL) defineEnumType(StatusFormat
Format types for status responses.