AusweisApp2
Lade ...
Suche ...
Keine Treffer
NumberModel.h
gehe zur Dokumentation dieser Datei
1
10#pragma once
11
12#include "EnumHelper.h"
13#include "Env.h"
15
16#include <QObject>
17#include <QSharedPointer>
18
19namespace governikus
20{
21
22defineEnumType(PasswordType, TRANSPORT_PIN, PIN, CAN, PUK, NEW_PIN, REMOTE_PIN, SMART_PIN, NEW_SMART_PIN, SMART_BLOCKING_CODE)
23
24class NumberModel
25 : public QObject
26{
27 Q_OBJECT
28 friend class Env;
29
30 Q_PROPERTY(PasswordType passwordType READ getPasswordType NOTIFY firePasswordTypeChanged)
31 Q_PROPERTY(QString can READ getCan WRITE setCan NOTIFY fireCanChanged)
32 Q_PROPERTY(QString pin READ getPin WRITE setPin NOTIFY firePinChanged)
33 Q_PROPERTY(QString newPin READ getNewPin WRITE setNewPin NOTIFY fireNewPinChanged)
34 Q_PROPERTY(QString puk READ getPuk WRITE setPuk NOTIFY firePukChanged)
35 Q_PROPERTY(bool hasPasswordError READ hasPasswordError NOTIFY fireInputErrorChanged)
36 Q_PROPERTY(QString inputError READ getInputError NOTIFY fireInputErrorChanged)
37 Q_PROPERTY(int retryCounter READ getRetryCounter NOTIFY fireReaderInfoChanged)
38 Q_PROPERTY(bool isCanAllowedMode READ isCanAllowedMode NOTIFY fireCanAllowedModeChanged)
39
40 private:
41 QSharedPointer<WorkflowContext> mContext;
42
43 NumberModel();
44 ~NumberModel() override = default;
45
46 CardReturnCode getInputErrorCode() const;
47
48 private Q_SLOTS:
49 void onCardConnectionChanged();
50
51 public:
52 void resetContext(const QSharedPointer<WorkflowContext>& pContext = QSharedPointer<WorkflowContext>());
53
54 [[nodiscard]] PasswordType getPasswordType() const;
55
56 [[nodiscard]] QString getCan() const;
57 void setCan(const QString& pCan);
58
59 [[nodiscard]] QString getPin() const;
60 void setPin(const QString& pPin);
61
62 [[nodiscard]] QString getNewPin() const;
63 void setNewPin(const QString& pNewPin);
64
65 [[nodiscard]] QString getPuk() const;
66 void setPuk(const QString& pPuk);
67
68 [[nodiscard]] bool hasPasswordError() const;
69 [[nodiscard]] QString getInputError() const;
70
71 [[nodiscard]] int getRetryCounter() const;
72 [[nodiscard]] bool isCanAllowedMode() const;
73
74 private Q_SLOTS:
75 void onReaderInfoChanged(const ReaderInfo& pInfo);
76
77 Q_SIGNALS:
78 void fireCanChanged();
79 void firePinChanged();
80 void fireNewPinChanged();
81 void firePukChanged();
82 void fireInputErrorChanged();
83 void fireReaderInfoChanged();
84 void fireCanAllowedModeChanged();
85 void firePasswordTypeChanged();
86};
87
88
89} // namespace governikus
#define defineEnumType(enumName,...)
Definition EnumHelper.h:98
Implementation of GeneralAuthenticate response APDUs.
Definition CommandApdu.h:16