AusweisApp2
WorkflowContext.h
gehe zur Dokumentation dieser Datei
1 
7 #pragma once
8 
9 #include "CardConnection.h"
10 #include "ECardApiResult.h"
11 #include "GlobalStatus.h"
12 #include "SmartCardDefinitions.h"
13 
14 #include <QElapsedTimer>
15 #include <QSharedPointer>
16 #include <QString>
17 
18 namespace governikus
19 {
20 
22  : public QObject
23 {
24  Q_OBJECT
25 
26  private:
27  bool mStateApproved;
28  bool mWorkflowKilled;
29  QString mCurrentState;
30  QVector<ReaderManagerPlugInType> mReaderPlugInTypes;
31  QString mReaderName;
32  QSharedPointer<CardConnection> mCardConnection;
33  int mCardVanishedDuringPacePinCount;
34  QElapsedTimer mCardVanishedDuringPacePinTimer;
35  QString mCan;
36  QString mPin;
37  QString mPuk;
38  PacePasswordId mEstablishPaceChannelType;
39  QScopedPointer<EstablishPaceChannelOutput> mPaceOutputData;
40  QString mExpectedReaderName;
41  int mExpectedRetryCounter;
42  CardReturnCode mLastPaceResult;
43  GlobalStatus mStatus;
44  ECardApiResult mStartPaosResult;
45  bool mErrorReportedToUser;
46  bool mPaceResultReportedToUser;
47  bool mWorkflowFinished;
48  bool mWorkflowCancelled;
49  bool mCanAllowedMode;
50  bool mNextWorkflowPending;
51  bool mCurrentReaderHasEidCardButInsufficientApduLength;
52 
53  private Q_SLOTS:
54  void onWorkflowCancelled();
55 
56  Q_SIGNALS:
58  void fireStateChanged(const QString& pNewState);
70 
72 
74 
75  public:
77  virtual ~WorkflowContext();
78 
79  bool isErrorReportedToUser() const;
80  void setErrorReportedToUser(bool pErrorReportedToUser = true);
81 
82  bool isPaceResultReportedToUser() const;
83  void setPaceResultReportedToUser(bool pReported = true);
84 
85  void setStateApproved(bool pApproved = true);
86  bool isStateApproved() const;
87 
88  void killWorkflow();
89  bool isWorkflowKilled() const;
90 
91  const QString& getCurrentState() const;
92  void setCurrentState(const QString& pNewState);
93 
94  const QVector<ReaderManagerPlugInType>& getReaderPlugInTypes() const;
95  void setReaderPlugInTypes(const QVector<ReaderManagerPlugInType>& pReaderPlugInTypes);
96 
97  const QString& getReaderName() const;
98  void setReaderName(const QString& pReaderName);
99 
100  const QSharedPointer<CardConnection>& getCardConnection() const;
101  void setCardConnection(const QSharedPointer<CardConnection>& pCardConnection);
102  void resetCardConnection();
103 
104  bool isNpaRepositioningRequired() const;
105  void setNpaPositionVerified();
106  void handleWrongNpaPosition();
107 
108  const QString& getPuk() const;
109  void setPuk(const QString& pPuk);
110 
111  const QString& getCan() const;
112  void setCan(const QString& pCan);
113 
114  const QString& getPin() const;
115  void setPin(const QString& pPin);
116 
117  PacePasswordId getEstablishPaceChannelType() const;
118  void setEstablishPaceChannelType(PacePasswordId pType);
119 
120  virtual void resetPacePasswords();
121 
123  void setPaceOutputData(const EstablishPaceChannelOutput& pPaceOutputData);
124 
125  bool isPinBlocked();
126  CardReturnCode getLastPaceResult() const;
127  void setLastPaceResult(CardReturnCode pLastPaceResult);
128  void resetLastPaceResult();
129 
130  bool isExpectedReader() const;
131  void rememberReader();
132 
133  int getExpectedRetryCounter() const;
134  void setExpectedRetryCounter(int pExpectedRetryCounter);
135 
136  const GlobalStatus& getStatus() const;
137  void setStatus(const GlobalStatus& pResult);
138 
139  const ECardApiResult getStartPaosResult() const;
140  void setStartPaosResult(const ECardApiResult& pStartPaosResult);
141 
142  bool isWorkflowFinished() const;
143  void setWorkflowFinished(bool pWorkflowFinished);
144 
145  bool isWorkflowCancelled() const;
146 
147  bool isCanAllowedMode() const;
148  void setCanAllowedMode(bool pCanAllowedMode);
149 
150  bool hasNextWorkflowPending() const;
151  void setNextWorkflowPending(bool pNextWorkflowPending);
152 
155 };
156 
157 } // namespace governikus
governikus::WorkflowContext::rememberReader
void rememberReader()
Definition: WorkflowContext.cpp:350
governikus::UNKNOWN
UNKNOWN
Definition: SmartCardDefinitions.h:18
governikus::WorkflowContext::isWorkflowCancelled
bool isWorkflowCancelled() const
Definition: WorkflowContext.cpp:406
governikus::WorkflowContext::setPaceOutputData
void setPaceOutputData(const EstablishPaceChannelOutput &pPaceOutputData)
Definition: WorkflowContext.cpp:318
governikus::WorkflowContext::getPuk
const QString & getPuk() const
Definition: WorkflowContext.cpp:243
governikus::WorkflowContext::setExpectedRetryCounter
void setExpectedRetryCounter(int pExpectedRetryCounter)
Definition: WorkflowContext.cpp:362
ReaderManager.h
governikus::WorkflowContext::fireResultChanged
void fireResultChanged()
governikus::WorkflowContext::resetLastPaceResult
void resetLastPaceResult()
Definition: WorkflowContext.cpp:338
governikus::WorkflowContext::setLastPaceResult
void setLastPaceResult(CardReturnCode pLastPaceResult)
Definition: WorkflowContext.cpp:330
governikus::WorkflowContext::isErrorReportedToUser
bool isErrorReportedToUser() const
Definition: WorkflowContext.cpp:65
governikus::WorkflowContext::getPaceOutputData
EstablishPaceChannelOutput * getPaceOutputData() const
Definition: WorkflowContext.cpp:312
governikus::WorkflowContext::fireStateApprovedChanged
void fireStateApprovedChanged()
governikus::WorkflowContext::firePasswordTypeChanged
void firePasswordTypeChanged()
governikus::WorkflowContext::WorkflowContext
WorkflowContext()
Definition: WorkflowContext.cpp:20
governikus::WorkflowContext::setCurrentState
void setCurrentState(const QString &pNewState)
Definition: WorkflowContext.cpp:131
governikus::WorkflowContext::getPin
const QString & getPin() const
Definition: WorkflowContext.cpp:275
governikus::WorkflowContext::getExpectedRetryCounter
int getExpectedRetryCounter() const
Definition: WorkflowContext.cpp:356
governikus::WorkflowContext::resetCardConnection
void resetCardConnection()
Definition: WorkflowContext.cpp:191
governikus::WorkflowContext::setErrorReportedToUser
void setErrorReportedToUser(bool pErrorReportedToUser=true)
Definition: WorkflowContext.cpp:71
governikus::WorkflowContext::resetPacePasswords
virtual void resetPacePasswords()
Definition: WorkflowContext.cpp:304
governikus::WorkflowContext::isPinBlocked
bool isPinBlocked()
Definition: WorkflowContext.cpp:237
governikus::WorkflowContext::isWorkflowKilled
bool isWorkflowKilled() const
Definition: WorkflowContext.cpp:113
governikus::WorkflowContext::handleWrongNpaPosition
void handleWrongNpaPosition()
Definition: WorkflowContext.cpp:226
governikus::WorkflowContext::killWorkflow
void killWorkflow()
Definition: WorkflowContext.cpp:99
governikus::WorkflowContext::setStateApproved
void setStateApproved(bool pApproved=true)
Definition: WorkflowContext.cpp:89
governikus::WorkflowContext::getStartPaosResult
const ECardApiResult getStartPaosResult() const
Definition: WorkflowContext.cpp:382
governikus::WorkflowContext::isCanAllowedMode
bool isCanAllowedMode() const
Definition: WorkflowContext.cpp:412
governikus::WorkflowContext::fireCardConnectionChanged
void fireCardConnectionChanged()
governikus::WorkflowContext::fireReaderPlugInTypesChanged
void fireReaderPlugInTypesChanged()
WorkflowContext.h
governikus::WorkflowContext::isPaceResultReportedToUser
bool isPaceResultReportedToUser() const
Definition: WorkflowContext.cpp:77
governikus::WorkflowContext::fireReaderNameChanged
void fireReaderNameChanged()
governikus::WorkflowContext::setCan
void setCan(const QString &pCan)
Definition: WorkflowContext.cpp:265
governikus::WorkflowContext::setReaderName
void setReaderName(const QString &pReaderName)
Definition: WorkflowContext.cpp:165
governikus::WorkflowContext::isNpaRepositioningRequired
bool isNpaRepositioningRequired() const
Definition: WorkflowContext.cpp:202
governikus::WorkflowContext::fireReaderInfoChanged
void fireReaderInfoChanged()
governikus::WorkflowContext::getCurrentState
const QString & getCurrentState() const
Definition: WorkflowContext.cpp:125
governikus::WorkflowContext::setPin
void setPin(const QString &pPin)
Definition: WorkflowContext.cpp:281
governikus::WorkflowContext::setCanAllowedMode
void setCanAllowedMode(bool pCanAllowedMode)
Definition: WorkflowContext.cpp:418
governikus::WorkflowContext::firePaceResultUpdated
void firePaceResultUpdated()
governikus::WorkflowContext::getReaderPlugInTypes
const QVector< ReaderManagerPlugInType > & getReaderPlugInTypes() const
Definition: WorkflowContext.cpp:143
governikus::WorkflowContext::setStatus
void setStatus(const GlobalStatus &pResult)
Definition: WorkflowContext.cpp:374
governikus::WorkflowContext::hasNextWorkflowPending
bool hasNextWorkflowPending() const
Definition: WorkflowContext.cpp:425
governikus::EstablishPaceChannelOutput
Definition: EstablishPaceChannelOutput.h:48
governikus::WorkflowContext::setNextWorkflowPending
void setNextWorkflowPending(bool pNextWorkflowPending)
Definition: WorkflowContext.cpp:431
governikus::ECardApiResult
Definition: ECardApiResult.h:25
GlobalStatus.h
governikus::WorkflowContext::fireCanChanged
void fireCanChanged()
governikus
Implementation of ActivationContext for Intent based activation on Android systems.
Definition: ActivationContext.h:15
governikus::WorkflowContext::fireCanAllowedModeChanged
void fireCanAllowedModeChanged()
SmartCardDefinitions.h
governikus::WorkflowContext::setPuk
void setPuk(const QString &pPuk)
Definition: WorkflowContext.cpp:249
governikus::WorkflowContext::isWorkflowFinished
bool isWorkflowFinished() const
Definition: WorkflowContext.cpp:394
governikus::WorkflowContext::setCardConnection
void setCardConnection(const QSharedPointer< CardConnection > &pCardConnection)
Definition: WorkflowContext.cpp:181
governikus::WorkflowContext::setEstablishPaceChannelType
void setEstablishPaceChannelType(PacePasswordId pType)
Definition: WorkflowContext.cpp:297
governikus::WorkflowContext::firePinChanged
void firePinChanged()
governikus::WorkflowContext
Definition: WorkflowContext.h:23
governikus::WorkflowContext::fireNextWorkflowPending
void fireNextWorkflowPending()
governikus::WorkflowContext::setNpaPositionVerified
void setNpaPositionVerified()
Definition: WorkflowContext.cpp:219
governikus::WorkflowContext::getCardConnection
const QSharedPointer< CardConnection > & getCardConnection() const
Definition: WorkflowContext.cpp:175
governikus::WorkflowContext::fireCancelWorkflow
void fireCancelWorkflow()
governikus::WorkflowContext::setPaceResultReportedToUser
void setPaceResultReportedToUser(bool pReported=true)
Definition: WorkflowContext.cpp:83
governikus::WorkflowContext::getLastPaceResult
CardReturnCode getLastPaceResult() const
Definition: WorkflowContext.cpp:324
governikus::WorkflowContext::getCan
const QString & getCan() const
Definition: WorkflowContext.cpp:259
governikus::WorkflowContext::currentReaderHasEidCardButInsufficientApduLength
bool currentReaderHasEidCardButInsufficientApduLength() const
Definition: WorkflowContext.cpp:441
governikus::WorkflowContext::isStateApproved
bool isStateApproved() const
Definition: WorkflowContext.cpp:119
governikus::GlobalStatus
Definition: GlobalStatus.h:20
governikus::WorkflowContext::setReaderPlugInTypes
void setReaderPlugInTypes(const QVector< ReaderManagerPlugInType > &pReaderPlugInTypes)
Definition: WorkflowContext.cpp:149
ECardApiResult.h
governikus::WorkflowContext::firePukChanged
void firePukChanged()
governikus::WorkflowContext::getStatus
const GlobalStatus & getStatus() const
Definition: WorkflowContext.cpp:368
governikus::WorkflowContext::setCurrentReaderHasEidCardButInsufficientApduLength
void setCurrentReaderHasEidCardButInsufficientApduLength(bool pState)
Definition: WorkflowContext.cpp:447
governikus::WorkflowContext::getReaderName
const QString & getReaderName() const
Definition: WorkflowContext.cpp:159
governikus::WorkflowContext::isExpectedReader
bool isExpectedReader() const
Definition: WorkflowContext.cpp:344
governikus::WorkflowContext::setStartPaosResult
void setStartPaosResult(const ECardApiResult &pStartPaosResult)
Definition: WorkflowContext.cpp:388
governikus::WorkflowContext::setWorkflowFinished
void setWorkflowFinished(bool pWorkflowFinished)
Definition: WorkflowContext.cpp:400
governikus::WorkflowContext::~WorkflowContext
virtual ~WorkflowContext()
Definition: WorkflowContext.cpp:52
governikus::GlobalStatus::Code::Card_Cancellation_By_User
@ Card_Cancellation_By_User
governikus::WorkflowContext::getEstablishPaceChannelType
PacePasswordId getEstablishPaceChannelType() const
Definition: WorkflowContext.cpp:291
governikus::WorkflowContext::fireStateChanged
void fireStateChanged(const QString &pNewState)
CardConnection.h