18#include <QCoreApplication>
59 INSTALL_QUAL_CERT = 7,
63 PRIVILEGED_TERMINAL = 3,
64 RESTRICTED_IDENTIFICATION = 2,
65 COMMUNITY_ID_VERIFICATION = 1,
71#define TYPE(x) static_cast<std::underlying_type_t<AccessRight>>(x)
100[[nodiscard]]
inline uint
qHash(governikus::AccessRight pAccessRight)
102 return static_cast<uint
>(pAccessRight);
107 CVCA = 3, DV_od = 2, DV_no_f = 1, AT = 0,
UNKNOWN = -1
111class AccessRoleAndRightsUtil
113 Q_DECLARE_TR_FUNCTIONS(governikus::AccessRoleAndRightsUtil)
122 Q_DECLARE_FLAGS(JoinRights, JoinRight)
125 static QList<AccessRight> mAllRights;
126 static QList<AccessRight> mAllDisplayedOrderedRights;
128 static bool fromTechnicalName(
const char*
const pStr,
const std::function<
void(AccessRight)>& pFunc);
129 static QStringList fromTechnicalName(
const QStringList& pStr, JoinRights pJoinRight);
131 AccessRoleAndRightsUtil() =
delete;
132 ~AccessRoleAndRightsUtil() =
delete;
135 static const QList<AccessRight>& allDisplayedOrderedRights();
136 static const QList<AccessRight>& allRights();
137 [[nodiscard]]
static bool isWriteAccessRight(AccessRight pRight);
138 static QString toDisplayText(AccessRight pRight);
139 static QLatin1String toTechnicalName(AccessRight pRight);
140 static bool fromTechnicalName(
const QString& pStr,
const std::function<
void(AccessRight)>& pFunc);
141 static QString joinFromTechnicalName(
const QStringList& pStr,
142 JoinRights pJoinRight = JoinRight::READWRITE,
143 const QString& pJoin = QStringLiteral(
", "));
146Q_DECLARE_OPERATORS_FOR_FLAGS(AccessRoleAndRightsUtil::JoinRights)
Q_DECLARE_TYPEINFO(governikus::AccessRight, Q_PRIMITIVE_TYPE)
#define defineTypedEnumType(enumName, enumType,...)
Definition: EnumHelper.h:59
#define defineEnumType(enumName,...)
Definition: EnumHelper.h:90
Implementation of GeneralAuthenticate response APDUs.
Definition: CommandApdu.h:16
UNKNOWN
Definition: ResponseApdu.h:63
BirthName
Definition: AccessRoleAndRight.h:77
PinManagement
Definition: AccessRoleAndRight.h:96
GivenNames
Definition: AccessRoleAndRight.h:84
Pseudonym
Definition: AccessRoleAndRight.h:89
AddressVerification
Definition: AccessRoleAndRight.h:90
auto qHash(const Oid &pOid)
Definition: Oid.h:164
WriteCommunityID
Definition: AccessRoleAndRight.h:93
Address
Definition: AccessRoleAndRight.h:76
WriteAddress
Definition: AccessRoleAndRight.h:92
DateOfBirth
Definition: AccessRoleAndRight.h:80
CanAllowed
Definition: AccessRoleAndRight.h:88
WriteResidencePermitII
Definition: AccessRoleAndRight.h:95
ASN1_OCTET_STRING CommunityID
Definition: AuthenticatedAuxiliaryData.cpp:22
ResidencePermitI
Definition: AccessRoleAndRight.h:74
Nationality
Definition: AccessRoleAndRight.h:78
ResidencePermitII
Definition: AccessRoleAndRight.h:73
FamilyName
Definition: AccessRoleAndRight.h:83
DocumentType
Definition: AccessRoleAndRight.h:87
ValidUntil
Definition: AccessRoleAndRight.h:85
ArtisticName
Definition: AccessRoleAndRight.h:82
IssuingCountry
Definition: AccessRoleAndRight.h:86
AgeVerification
Definition: AccessRoleAndRight.h:91
WriteResidencePermitI
Definition: AccessRoleAndRight.h:94
PlaceOfBirth
Definition: AccessRoleAndRight.h:79
DoctoralDegree
Definition: AccessRoleAndRight.h:81