AusweisApp2
AccessRightManager.h
gehe zur Dokumentation dieser Datei
1 
7 #pragma once
8 
9 #include "asn1/CVCertificate.h"
11 
12 #include <QDebug>
13 #include <QObject>
14 #include <QPointer>
15 #include <QSharedPointer>
16 
17 class test_ChatModel;
18 
19 namespace governikus
20 {
21 
23  : public QObject
24 {
25  Q_OBJECT
26 
27  private:
28  friend class ::test_ChatModel;
29 
30  public:
31  explicit AccessRightManager(QSharedPointer<DIDAuthenticateEAC1> pDIDAuthenticateEAC1, QSharedPointer<const CVCertificate> pTerminalCvc);
32 
33 
34  [[nodiscard]] const QSharedPointer<const CVCertificate>& getTerminalCvc() const
35  {
36  return mTerminalCvc;
37  }
38 
39 
40  [[nodiscard]] const QSet<AccessRight>& getOptionalAccessRights() const
41  {
42  return mOptionalAccessRights;
43  }
44 
45 
46  [[nodiscard]] const QSet<AccessRight>& getRequiredAccessRights() const
47  {
48  return mRequiredAccessRights;
49  }
50 
51 
52  [[nodiscard]] const QSet<AccessRight>& getEffectiveAccessRights() const
53  {
54  return mEffectiveAccessRights;
55  }
56 
57 
58  void operator+=(AccessRight pAccessRight);
59  void operator-=(AccessRight pAccessRight);
60  void operator=(const QSet<AccessRight>& pAccessRights);
61  operator QByteArray() const;
62 
63  Q_SIGNALS:
65 
66  private:
67  QSharedPointer<const CVCertificate> mTerminalCvc;
68  QSharedPointer<DIDAuthenticateEAC1> mDIDAuthenticateEAC1;
69  QSet<AccessRight> mOptionalAccessRights;
70  QSet<AccessRight> mEffectiveAccessRights;
71  QSet<AccessRight> mRequiredAccessRights;
72 
73  void removeForbiddenAccessRights(QSet<AccessRight>& pAccessRights);
74 };
75 
76 } // namespace governikus
governikus::AccessRightManager::operator-=
void operator-=(AccessRight pAccessRight)
Definition: AccessRightManager.cpp:130
governikus::AccessRightManager::AccessRightManager
AccessRightManager(QSharedPointer< DIDAuthenticateEAC1 > pDIDAuthenticateEAC1, QSharedPointer< const CVCertificate > pTerminalCvc)
Definition: AccessRightManager.cpp:12
governikus::AccessRightManager::getEffectiveAccessRights
const QSet< AccessRight > & getEffectiveAccessRights() const
Definition: AccessRightManager.h:52
governikus::AccessRightManager::operator+=
void operator+=(AccessRight pAccessRight)
Definition: AccessRightManager.cpp:113
governikus::AccessRightManager::fireEffectiveAccessRightsChanged
void fireEffectiveAccessRightsChanged()
AppSettings.h
VolatileSettings.h
DidAuthenticateEac1.h
governikus
Implementation of ActivationContext for Intent based activation on Android systems.
Definition: ActivationContext.h:15
governikus::AccessRightManager::operator=
void operator=(const QSet< AccessRight > &pAccessRights)
Definition: AccessRightManager.cpp:147
governikus::CHAT
struct chat_st { ASN1_OBJECT *mType CHAT
According to.
Definition: Chat.h:67
governikus::AccessRightManager
Definition: AccessRightManager.h:24
governikus::AccessRightManager::getTerminalCvc
const QSharedPointer< const CVCertificate > & getTerminalCvc() const
Definition: AccessRightManager.h:34
CVCertificate.h
governikus::AccessRightManager::getOptionalAccessRights
const QSet< AccessRight > & getOptionalAccessRights() const
Definition: AccessRightManager.h:40
AccessRightManager.h
governikus::AccessRightManager::getRequiredAccessRights
const QSet< AccessRight > & getRequiredAccessRights() const
Definition: AccessRightManager.h:46