AusweisApp2
ReaderConfigurationParser.h
gehe zur Dokumentation dieser Datei
1 
7 #pragma once
8 
9 #include "ReaderConfiguration.h"
10 
11 #include <QJsonValue>
12 #include <QOperatingSystemVersion>
13 
14 class test_ReaderConfigurationEntryParser;
15 
16 namespace governikus
17 {
19 {
20  friend class ::test_ReaderConfigurationEntryParser;
21 
22  private:
26  class EntryParser
27  {
28  friend class ::test_ReaderConfigurationEntryParser;
29 
30  private:
31  const QJsonValue mJsonValue;
32 
33  [[nodiscard]] QString getDriverUrl(const QJsonObject& pObject) const;
34  [[nodiscard]] bool matchPlatform(const QJsonArray& pPlatforms, const QOperatingSystemVersion& pCurrentVersion = QOperatingSystemVersion::current()) const;
35  [[nodiscard]] ReaderConfigurationInfo fail(const QString& logMessage) const;
36 
37  public:
38  explicit EntryParser(const QJsonValue& pJsonValue);
39  virtual ~EntryParser();
40 
41  [[nodiscard]] ReaderConfigurationInfo parse() const;
42  };
43 
44  static QVector<ReaderConfigurationInfo> fail(const QString& logMessage);
45  static bool hasUniqueId(const ReaderConfigurationInfo& pInfo, const QVector<ReaderConfigurationInfo>& pInfos);
46 
47  ReaderConfigurationParser() = delete;
48  ~ReaderConfigurationParser() = delete;
49 
50  public:
55  static QVector<ReaderConfigurationInfo> parse(const QByteArray& pData);
56 };
57 
58 
59 } // namespace governikus
Definition: ReaderConfigurationInfo.h:19
Definition: ReaderConfigurationParser.h:19
static QVector< ReaderConfigurationInfo > parse(const QByteArray &pData)
Parses the configuration data and returns ReaderConfiguration.
Definition: ReaderConfigurationParser.cpp:174
Implementation of GeneralAuthenticate response APDUs.
Definition: CommandApdu.h:16