diff options
author | Dominik Riebeling <Dominik.Riebeling@gmail.com> | 2020-11-19 19:54:25 +0100 |
---|---|---|
committer | Dominik Riebeling <Dominik.Riebeling@gmail.com> | 2020-11-19 21:32:41 +0100 |
commit | f608de723c863abc0e32cd7584c046eceb910d78 (patch) | |
tree | 030cf71ffd37729b189b0731bdbb70b96943a403 /rbutil/rbutilqt/base | |
parent | f8fb4274ee56025551ddad84232c02c2a49dfcce (diff) | |
download | rockbox-f608de723c863abc0e32cd7584c046eceb910d78.tar.gz rockbox-f608de723c863abc0e32cd7584c046eceb910d78.zip |
rbutil: Convert ServerInfo to singleton.
Change-Id: I29d94eb6bae084754e5e3f337c41de8354ba123c
Diffstat (limited to 'rbutil/rbutilqt/base')
-rw-r--r-- | rbutil/rbutilqt/base/serverinfo.cpp | 14 | ||||
-rw-r--r-- | rbutil/rbutilqt/base/serverinfo.h | 21 |
2 files changed, 25 insertions, 10 deletions
diff --git a/rbutil/rbutilqt/base/serverinfo.cpp b/rbutil/rbutilqt/base/serverinfo.cpp index 544348c3b1..08f7f770b7 100644 --- a/rbutil/rbutilqt/base/serverinfo.cpp +++ b/rbutil/rbutilqt/base/serverinfo.cpp | |||
@@ -21,7 +21,15 @@ | |||
21 | #include "systeminfo.h" | 21 | #include "systeminfo.h" |
22 | #include "Logger.h" | 22 | #include "Logger.h" |
23 | 23 | ||
24 | static QSettings* serverSettings = nullptr; | 24 | ServerInfo* ServerInfo::infoInstance = nullptr; |
25 | |||
26 | ServerInfo* ServerInfo::instance() | ||
27 | { | ||
28 | if (infoInstance == nullptr) { | ||
29 | infoInstance = new ServerInfo(); | ||
30 | } | ||
31 | return infoInstance; | ||
32 | } | ||
25 | 33 | ||
26 | // server infos | 34 | // server infos |
27 | const static struct { | 35 | const static struct { |
@@ -131,10 +139,10 @@ QVariant ServerInfo::platformValue(enum ServerInfos info, QString platform) | |||
131 | return value; | 139 | return value; |
132 | } | 140 | } |
133 | 141 | ||
134 | QString ServerInfo::statusToString(int status) | 142 | QString ServerInfo::statusAsString(QString platform) |
135 | { | 143 | { |
136 | QString value; | 144 | QString value; |
137 | switch(status) | 145 | switch(platformValue(CurStatus, platform).toInt()) |
138 | { | 146 | { |
139 | case STATUS_RETIRED: | 147 | case STATUS_RETIRED: |
140 | value = tr("Stable (Retired)"); | 148 | value = tr("Stable (Retired)"); |
diff --git a/rbutil/rbutilqt/base/serverinfo.h b/rbutil/rbutilqt/base/serverinfo.h index e8d7cd5b74..9affcb6032 100644 --- a/rbutil/rbutilqt/base/serverinfo.h +++ b/rbutil/rbutilqt/base/serverinfo.h | |||
@@ -18,6 +18,9 @@ | |||
18 | * | 18 | * |
19 | ****************************************************************************/ | 19 | ****************************************************************************/ |
20 | 20 | ||
21 | // Parse and provide information from build server via build-info file. | ||
22 | // This is a singleton. | ||
23 | |||
21 | #ifndef SERVERINFO_H | 24 | #ifndef SERVERINFO_H |
22 | #define SERVERINFO_H | 25 | #define SERVERINFO_H |
23 | 26 | ||
@@ -47,17 +50,21 @@ class ServerInfo : public QObject | |||
47 | RelCandidateUrl, | 50 | RelCandidateUrl, |
48 | }; | 51 | }; |
49 | 52 | ||
53 | static ServerInfo* instance(); | ||
54 | |||
50 | //! read in buildinfo file | 55 | //! read in buildinfo file |
51 | static void readBuildInfo(QString file); | 56 | void readBuildInfo(QString file); |
52 | //! get a value from server info for a named platform. | 57 | //! get a value from server info for a named platform. |
53 | static QVariant platformValue(enum ServerInfos setting, QString platform = ""); | 58 | QVariant platformValue(enum ServerInfos setting, QString platform = ""); |
54 | //! Convert status number to string | 59 | //! Get status number as string |
55 | static QString statusToString(int status); | 60 | QString statusAsString(QString platform = ""); |
56 | 61 | ||
57 | private: | 62 | protected: |
58 | //! you shouldnt call this, its a fully static class | 63 | ServerInfo() : serverSettings(nullptr) {} |
59 | ServerInfo() {} | ||
60 | 64 | ||
65 | private: | ||
66 | static ServerInfo* infoInstance; | ||
67 | QSettings* serverSettings; | ||
61 | 68 | ||
62 | }; | 69 | }; |
63 | 70 | ||