AusweisApp2
 Alle Klassen Namensbereiche Dateien Funktionen Variablen Typdefinitionen Aufzählungen Aufzählungswerte Propertys Freundbeziehungen Makrodefinitionen
GlobalStatus.h
gehe zur Dokumentation dieser Datei
1 
7 #pragma once
8 
9 #include "EnumHelper.h"
10 
11 #include <QCoreApplication>
12 #include <QSharedData>
13 
14 namespace governikus
15 {
16 
17 
19 {
20  Q_GADGET
21  Q_DECLARE_TR_FUNCTIONS(governikus::GlobalStatus)
22 
23  public:
24  enum class Code
25  {
27  No_Error,
28 
34 
38 
81 
83 
112 
115 
129 
133 
140  };
141 
142  enum class Origin
143  {
144  Server, Client
145  };
146 
147  Q_ENUM(Code)
148  Q_ENUM(Origin)
149 
150  private:
151  class InternalStatus
152  : public QSharedData
153  {
154  public:
155  const Code mStatusCode;
156  const QStringList mExternalInformation;
157  const Origin mOrigin;
158 
159  InternalStatus(Code pStatusCode, const QStringList& pExternalInformation, const Origin pOrigin)
160  : mStatusCode(pStatusCode)
161  , mExternalInformation(pExternalInformation)
162  , mOrigin(pOrigin)
163  {
164 
165  }
166 
167 
168  bool operator ==(const InternalStatus& pOther) const
169  {
170  return mStatusCode == pOther.mStatusCode &&
171  mExternalInformation == pOther.mExternalInformation &&
172  mOrigin == pOther.mOrigin;
173  }
174 
175 
176  };
177 
178  QSharedDataPointer<InternalStatus> d;
179  const QString getExternalInfo(int pIndex = 0) const;
180 
181  static QString maskMessage(const QString& pMessage, const bool pMask);
182 
183  public:
184  GlobalStatus(Code pStatusCode = Code::Unknown_Error, const QStringList& pExternalInformation = QStringList(), const Origin pOrigin = Origin::Client)
185  : d(new InternalStatus(pStatusCode, pExternalInformation, pOrigin))
186  {
187 
188  }
189 
190 
191  GlobalStatus(Code pStatusCode, const QString& pExternalInformation, const Origin pOrigin = Origin::Client)
192  : GlobalStatus(pStatusCode, QStringList(pExternalInformation), pOrigin)
193  {
194 
195  }
196 
197 
198  bool operator ==(const GlobalStatus& pOther) const;
199  bool is(const Code pStatusCode) const;
200 
201  Code getStatusCode() const;
202  operator GlobalStatus::Code() const;
203 
204  QString toErrorDescription(const bool pSimplifiedVersion = false) const;
205 
206  Origin getOrigin() const;
207  bool isOriginServer() const;
208 
209  bool isNoError() const;
210  bool isError() const;
211  bool isCancellationByUser() const;
212 };
213 
215 
217 
218 } /* namespace governikus */
219 
220 
221 QDebug operator <<(QDebug pDbg, const governikus::GlobalStatus& pStatus);
bool isError() const
Definition: GlobalStatus.cpp:326
Code
Definition: GlobalStatus.h:24
bool operator==(const GlobalStatus &pOther) const
Definition: GlobalStatus.cpp:33
Definition: GlobalStatus.h:18
Code getStatusCode() const
Definition: GlobalStatus.cpp:45
QDebug operator<<(QDebug pDbg, const governikus::CVCertificate &pCvc)
Definition: CVCertificate.cpp:146
bool isOriginServer() const
Definition: GlobalStatus.cpp:314
#define defineEnumOperators(enumName)
Definition: EnumHelper.h:18
Origin getOrigin() const
Definition: GlobalStatus.cpp:308
bool isNoError() const
Definition: GlobalStatus.cpp:320
bool is(const Code pStatusCode) const
Definition: GlobalStatus.cpp:39
pOrigin GlobalStatus(Code pStatusCode, const QString &pExternalInformation, const Origin pOrigin=Origin::Client)
Definition: GlobalStatus.h:191
pExternalInformation
Definition: GlobalStatus.h:185
Origin
Definition: GlobalStatus.h:142
QString toErrorDescription(const bool pSimplifiedVersion=false) const
Definition: GlobalStatus.cpp:57
bool isCancellationByUser() const
Definition: GlobalStatus.cpp:332