AusweisApp
Lade ...
Suche ...
Keine Treffer
AccessRightManager.h
gehe zur Dokumentation dieser Datei
1
4
5#pragma once
6
9
10#include <QDebug>
11#include <QObject>
12#include <QPointer>
13#include <QSharedPointer>
14
15class test_ChatModel;
16
17namespace governikus
18{
19
21 : public QObject
22{
23 Q_OBJECT
24 friend class ::test_ChatModel;
25
26 public:
27 explicit AccessRightManager(QSharedPointer<DIDAuthenticateEAC1> pDIDAuthenticateEAC1, QSharedPointer<const CVCertificate> pTerminalCvc, QSharedPointer<const CVCertificate> pDvCvc);
28 explicit AccessRightManager(QSharedPointer<CHAT> pRequiredChat);
29
30
31 [[nodiscard]] const QSharedPointer<const CVCertificate>& getTerminalCvc() const
32 {
33 return mTerminalCvc;
34 }
35
36
37 [[nodiscard]] const QSet<AccessRight>& getOptionalAccessRights() const
38 {
39 return mOptionalAccessRights;
40 }
41
42
43 [[nodiscard]] const QSet<AccessRight>& getRequiredAccessRights() const
44 {
45 return mRequiredAccessRights;
46 }
47
48
49 [[nodiscard]] const QSet<AccessRight>& getEffectiveAccessRights() const
50 {
51 return mEffectiveAccessRights;
52 }
53
54
55 void operator+=(AccessRight pAccessRight);
56 void operator-=(AccessRight pAccessRight);
57 void operator=(const QSet<AccessRight>& pAccessRights);
58 operator QByteArray() const;
59
60 Q_SIGNALS:
62
63 private:
64 QSharedPointer<const CVCertificate> mTerminalCvc;
65 QSharedPointer<DIDAuthenticateEAC1> mDIDAuthenticateEAC1;
66 QSet<AccessRight> mOptionalAccessRights;
67 QSet<AccessRight> mEffectiveAccessRights;
68 QSet<AccessRight> mRequiredAccessRights;
69
70 void removeForbiddenAccessRights(QSet<AccessRight>& pAccessRights);
71};
72
73} // namespace governikus
AccessRightManager(QSharedPointer< DIDAuthenticateEAC1 > pDIDAuthenticateEAC1, QSharedPointer< const CVCertificate > pTerminalCvc, QSharedPointer< const CVCertificate > pDvCvc)
Definition AccessRightManager.cpp:17
const QSet< AccessRight > & getEffectiveAccessRights() const
Definition AccessRightManager.h:49
void operator=(const QSet< AccessRight > &pAccessRights)
Definition AccessRightManager.cpp:163
const QSet< AccessRight > & getOptionalAccessRights() const
Definition AccessRightManager.h:37
void operator+=(AccessRight pAccessRight)
Definition AccessRightManager.cpp:129
const QSharedPointer< const CVCertificate > & getTerminalCvc() const
Definition AccessRightManager.h:31
const QSet< AccessRight > & getRequiredAccessRights() const
Definition AccessRightManager.h:43
void operator-=(AccessRight pAccessRight)
Definition AccessRightManager.cpp:146
Defines the AccessRight and AccessRole enum.
Definition CommandApdu.h:17