AusweisApp2
ProviderConfigurationInfo.h
gehe zur Dokumentation dieser Datei
1 
7 #pragma once
8 
9 #include "LanguageString.h"
10 #include "UpdatableFile.h"
11 
12 #include <QSharedData>
13 #include <QSharedPointer>
14 #include <QString>
15 #include <QStringList>
16 #include <QUrl>
17 
18 
19 namespace governikus
20 {
21 
23 {
24  private:
25  class InternalInfo
26  : public QSharedData
27  {
28  public:
29  const LanguageString mShortName;
30  const LanguageString mLongName;
31  const LanguageString mShortDescription;
32  const LanguageString mLongDescription;
33  const QString mAddress;
34  const QString mHomepage;
35  const QString mCategory;
36  const QString mPhone;
37  const QString mEmail;
38  const QString mPostalAddress;
39  const QString mIcon;
40  const QString mImage;
41  const QStringList mSubjectUrls;
42  const QString mSubjectUrlInfo;
43 
44  InternalInfo(const LanguageString& pShortName,
45  const LanguageString& pLongName,
46  const LanguageString& pShortDescription,
47  const LanguageString& pLongDescription,
48  const QString& pAddress,
49  const QString& pHomepage,
50  const QString& pCategory,
51  const QString& pPhone,
52  const QString& pEmail,
53  const QString& pPostalAddress,
54  const QString& pIcon,
55  const QString& pImage,
56  const QStringList& pSubjectUrls,
57  const QString& pSubjectUrlInfo)
58  : mShortName(pShortName)
59  , mLongName(pLongName)
60  , mShortDescription(pShortDescription)
61  , mLongDescription(pLongDescription)
62  , mAddress(pAddress)
63  , mHomepage(pHomepage)
64  , mCategory(pCategory)
65  , mPhone(pPhone)
66  , mEmail(pEmail)
67  , mPostalAddress(pPostalAddress)
68  , mIcon(pIcon)
69  , mImage(pImage)
70  , mSubjectUrls(pSubjectUrls)
71  , mSubjectUrlInfo(pSubjectUrlInfo)
72  {
73  }
74 
75 
76  bool operator ==(const InternalInfo& pOther) const
77  {
78  return mShortName == pOther.mShortName &&
79  mLongName == pOther.mLongName &&
80  mShortDescription == pOther.mShortDescription &&
81  mLongDescription == pOther.mLongDescription &&
82  mAddress == pOther.mAddress &&
83  mHomepage == pOther.mHomepage &&
84  mCategory == pOther.mCategory &&
85  mPhone == pOther.mPhone &&
86  mEmail == pOther.mEmail &&
87  mPostalAddress == pOther.mPostalAddress &&
88  mIcon == pOther.mIcon &&
89  mImage == pOther.mImage &&
90  mSubjectUrls == pOther.mSubjectUrls &&
91  mSubjectUrlInfo == pOther.mSubjectUrlInfo;
92  }
93 
94 
95  };
96 
97  QSharedDataPointer<InternalInfo> d;
98 
99  [[nodiscard]] QString getDefaultFile(const QString& pSuffix) const;
100 
101  public:
102  ProviderConfigurationInfo(const LanguageString& pShortName = QString(),
103  const LanguageString& pLongName = QString(),
104  const LanguageString& pShortDescription = QString(),
105  const LanguageString& pLongDescription = QString(),
106  const QString& pAddress = QString(),
107  const QString& pHomepage = QString(),
108  const QString& pCategory = QString(),
109  const QString& pPhone = QString(),
110  const QString& pEmail = QString(),
111  const QString& pPostalAddress = QString(),
112  const QString& pIcon = QString(),
113  const QString& pImage = QString(),
114  const QStringList& pSubjectUrls = QStringList(),
115  const QString& pSubjectUrlInfo = QString());
116  virtual ~ProviderConfigurationInfo();
117 
118  bool operator ==(const ProviderConfigurationInfo& pOther) const;
119  [[nodiscard]] bool matchWithSubjectUrl(const QString& pSubjectUrl) const;
120 
121  [[nodiscard]] const LanguageString& getShortName() const;
122  [[nodiscard]] const LanguageString& getLongName() const;
123  [[nodiscard]] const LanguageString& getShortDescription() const;
124  [[nodiscard]] const LanguageString& getLongDescription() const;
125  [[nodiscard]] const QString& getAddress() const;
126  [[nodiscard]] QString getAddressDomain() const;
127  [[nodiscard]] const QString& getHomepage() const;
128  [[nodiscard]] QString getHomepageBase() const;
129  [[nodiscard]] const QString& getCategory() const;
130  [[nodiscard]] const QString& getPhone() const;
131  [[nodiscard]] const QString& getEMail() const;
132  [[nodiscard]] const QString& getPostalAddress() const;
133  [[nodiscard]] QSharedPointer<UpdatableFile> getIcon() const;
134  [[nodiscard]] QSharedPointer<UpdatableFile> getImage() const;
135  [[nodiscard]] const QStringList& getSubjectUrls() const;
136  [[nodiscard]] const QString& getSubjectUrlInfo() const;
137 };
138 
139 
140 } // namespace governikus
const LanguageString & getLongName() const
Definition: ProviderConfigurationInfo.cpp:91
const QString & getAddress() const
Definition: ProviderConfigurationInfo.cpp:109
const QString & getHomepage() const
Definition: ProviderConfigurationInfo.cpp:121
const LanguageString & getLongDescription() const
Definition: ProviderConfigurationInfo.cpp:103
QSharedPointer< UpdatableFile > getIcon() const
Definition: ProviderConfigurationInfo.cpp:157
Definition: LanguageString.h:17
bool matchWithSubjectUrl(const QString &pSubjectUrl) const
Definition: ProviderConfigurationInfo.cpp:58
QString getHomepageBase() const
Definition: ProviderConfigurationInfo.cpp:127
QString getAddressDomain() const
Definition: ProviderConfigurationInfo.cpp:115
Implementation of ActivationContext for Intent based activation on Android systems.
Definition: ActivationContext.h:14
const QString & getPhone() const
Definition: ProviderConfigurationInfo.cpp:139
bool operator==(const ProviderConfigurationInfo &pOther) const
Definition: ProviderConfigurationInfo.cpp:52
virtual ~ProviderConfigurationInfo()
Definition: ProviderConfigurationInfo.cpp:47
const QString & getEMail() const
Definition: ProviderConfigurationInfo.cpp:145
ProviderConfigurationInfo(const LanguageString &pShortName=QString(), const LanguageString &pLongName=QString(), const LanguageString &pShortDescription=QString(), const LanguageString &pLongDescription=QString(), const QString &pAddress=QString(), const QString &pHomepage=QString(), const QString &pCategory=QString(), const QString &pPhone=QString(), const QString &pEmail=QString(), const QString &pPostalAddress=QString(), const QString &pIcon=QString(), const QString &pImage=QString(), const QStringList &pSubjectUrls=QStringList(), const QString &pSubjectUrlInfo=QString())
Definition: ProviderConfigurationInfo.cpp:27
const LanguageString & getShortDescription() const
Definition: ProviderConfigurationInfo.cpp:97
Definition: ProviderConfigurationInfo.h:22
const LanguageString & getShortName() const
Definition: ProviderConfigurationInfo.cpp:85
const QString & getSubjectUrlInfo() const
Definition: ProviderConfigurationInfo.cpp:177
QSharedPointer< UpdatableFile > getImage() const
Definition: ProviderConfigurationInfo.cpp:164
const QString & getCategory() const
Definition: ProviderConfigurationInfo.cpp:133
const QStringList & getSubjectUrls() const
Definition: ProviderConfigurationInfo.cpp:171
const QString & getPostalAddress() const
Definition: ProviderConfigurationInfo.cpp:151