libhomegear-base  0.7
Base library for Homegear and Homegear family modules.
Settings.h
Go to the documentation of this file.
1 /* Copyright 2013-2019 Homegear GmbH
2  *
3  * libhomegear-base is free software: you can redistribute it and/or
4  * modify it under the terms of the GNU Lesser General Public License as
5  * published by the Free Software Foundation, either version 3 of the
6  * License, or (at your option) any later version.
7  *
8  * libhomegear-base is distributed in the hope that it will be useful,
9  * but WITHOUT ANY WARRANTY; without even the implied warranty of
10  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11  * GNU Lesser General Public License for more details.
12  *
13  * You should have received a copy of the GNU Lesser General Public
14  * License along with libhomegear-base. If not, see
15  * <http://www.gnu.org/licenses/>.
16  *
17  * In addition, as a special exception, the copyright holders give
18  * permission to link the code of portions of this program with the
19  * OpenSSL library under certain conditions as described in each
20  * individual source file, and distribute linked combinations
21  * including the two.
22  * You must obey the GNU Lesser General Public License in all respects
23  * for all of the code used other than OpenSSL. If you modify
24  * file(s) with this exception, you may extend this exception to your
25  * version of the file(s), but you are not obligated to do so. If you
26  * do not wish to do so, delete this exception statement from your
27  * version. If you delete this exception statement from all source
28  * files in the program, then also delete it here.
29 */
30 
31 #ifndef SETTINGS_H_
32 #define SETTINGS_H_
33 
34 #include <string>
35 #include <map>
36 #include <vector>
37 
38 namespace BaseLib {
39 class SharedObjects;
40 
41 class Settings {
42  public:
43  Settings();
44  virtual ~Settings() {}
45  void init(BaseLib::SharedObjects *baseLib);
46  void load(const std::string &filename, const std::string &executablePath, bool hideOutput = false);
47  bool changed();
48 
49  std::string runAsUser() { return _runAsUser; }
50  std::string runAsGroup() { return _runAsGroup; }
51  int32_t debugLevel() { return _debugLevel; }
52  bool memoryDebugging() { return _memoryDebugging; }
53  std::string waitForIp4OnInterface() { return _waitForIp4OnInterface; }
54  std::string waitForIp6OnInterface() { return _waitForIp6OnInterface; }
55  bool enableUPnP() { return _enableUPnP; }
56  std::string uPnPIpAddress() { return _uPnPIpAddress; }
57  std::string ssdpIpAddress() { return _ssdpIpAddress; }
58  int32_t ssdpPort() { return _ssdpPort; }
59  bool enableMonitoring() { return _enableMonitoring; };
60  bool enableHgdc() { return _enableHgdc; };
61  int32_t hgdcPort() { return _hgdcPort; }
62  bool devLog() { return _devLog; }
63  bool ipcLog() { return _ipcLog; }
64  bool enableCoreDumps() { return _enableCoreDumps; };
65  bool enableNodeBlue() { return _enableNodeBlue; }
66  bool setDevicePermissions() { return _setDevicePermissions; }
67  std::string workingDirectory() { return _workingDirectory; }
68  std::string socketPath() { return _socketPath; }
69  std::string dataPath() { return _dataPath; }
70  uint32_t dataPathPermissions() { return _dataPathPermissions; }
71  std::string dataPathUser() { return _dataPathUser; }
72  std::string dataPathGroup() { return _dataPathGroup; }
73  std::string writeableDataPath() { return _writeableDataPath; }
74  uint32_t writeableDataPathPermissions() { return _writeableDataPathPermissions; }
75  std::string writeableDataPathUser() { return _writeableDataPathUser; }
76  std::string writeableDataPathGroup() { return _writeableDataPathGroup; }
77  std::string familyDataPath() { return _familyDataPath; }
78  uint32_t familyDataPathPermissions() { return _familyDataPathPermissions; }
79  std::string familyDataPathUser() { return _familyDataPathUser; }
80  std::string familyDataPathGroup() { return _familyDataPathGroup; }
81  bool databaseSynchronous() { return _databaseSynchronous; }
82  bool databaseMemoryJournal() { return _databaseMemoryJournal; }
83  bool databaseWALJournal() { return _databaseWALJournal; }
84  std::string databasePath() { return _databasePath; }
85  std::string factoryDatabasePath() { return _factoryDatabasePath; }
86  std::string databaseBackupPath() { return _databaseBackupPath; }
87  std::string factoryDatabaseBackupPath() { return _factoryDatabaseBackupPath; }
88  uint32_t databaseMaxBackups() { return _databaseMaxBackups; }
89  std::string logfilePath() { return _logfilePath; }
90  bool waitForCorrectTime() { return _waitForCorrectTime; }
91  bool prioritizeThreads() { return _prioritizeThreads; }
92  uint32_t maxTotalThreadCount() { return _maxTotalThreadCount; }
93  void setPrioritizeThreads(bool value) { _prioritizeThreads = value; }
94  uint32_t secureMemorySize() { return _secureMemorySize; }
95  uint32_t workerThreadWindow() { return _workerThreadWindow; }
96  uint32_t scriptEngineThreadCount() { return _scriptEngineThreadCount; }
97  uint32_t scriptEngineServerMaxConnections() { return _scriptEngineServerMaxConnections; }
98  uint32_t scriptEngineMaxThreadsPerScript() { return _scriptEngineMaxThreadsPerScript; }
99  int32_t scriptEngineMaxScriptsPerProcess() { return _scriptEngineMaxScriptsPerProcess; }
100  int32_t scriptEngineWatchdogTimeout() { return _scriptEngineWatchdogTimeout; }
101  bool scriptEngineManualClientStart() { return _scriptEngineManualClientStart; }
102  uint32_t nodeBlueProcessingThreadCountServer() { return _nodeBlueProcessingThreadCountServer; }
103  uint32_t nodeBlueProcessingThreadCountNodes() { return _nodeBlueProcessingThreadCountNodes; }
104  uint32_t nodeBlueServerMaxConnections() { return _nodeBlueServerMaxConnections; }
105  int32_t maxNodeThreadsPerProcess() { return _maxNodeThreadsPerProcess; }
106  int32_t nodeBlueWatchdogTimeout() { return _nodeBlueWatchdogTimeout; }
107  bool nodeBlueManualClientStart() { return _nodeBlueManualClientStart; }
108  std::string nodeRedJsPath() { return _nodeRedJsPath; }
109  uint16_t nodeRedPort() { return _nodeRedPort; }
110  std::string nodeOptions() { return _nodeOptions; }
111  uint32_t ipcThreadCount() { return _ipcThreadCount; }
112  uint32_t ipcServerMaxConnections() { return _ipcServerMaxConnections; }
113  uint32_t cliServerMaxConnections() { return _cliServerMaxConnections; }
114  uint32_t rpcServerMaxConnections() { return _rpcServerMaxConnections; }
115  int32_t rpcServerThreadPriority() { return _rpcServerThreadPriority; }
116  int32_t rpcServerThreadPolicy() { return _rpcServerThreadPolicy; }
117  uint32_t rpcClientMaxServers() { return _rpcClientMaxServers; }
118  int32_t rpcClientThreadPriority() { return _rpcClientThreadPriority; }
119  int32_t rpcClientThreadPolicy() { return _rpcClientThreadPolicy; }
120  int32_t workerThreadPriority() { return _workerThreadPriority; }
121  int32_t workerThreadPolicy() { return _workerThreadPolicy; }
122  int32_t packetQueueThreadPriority() { return _packetQueueThreadPriority; }
123  int32_t packetQueueThreadPolicy() { return _packetQueueThreadPolicy; }
124  int32_t packetReceivedThreadPriority() { return _packetReceivedThreadPriority; }
125  int32_t packetReceivedThreadPolicy() { return _packetReceivedThreadPolicy; }
126  std::string familyConfigPath() { return _familyConfigPath; }
127  std::string deviceDescriptionPath() { return _deviceDescriptionPath; }
128  std::string clientSettingsPath() { return _clientSettingsPath; }
129  std::string serverSettingsPath() { return _serverSettingsPath; }
130  std::string mqttSettingsPath() { return _mqttSettingsPath; }
131  std::string cloudUserMapPath() { return _cloudUserMapPath; }
132  std::string modulePath() { return _modulePath; }
133  std::string scriptPath() { return _scriptPath; }
134  uint32_t scriptPathPermissions() { return _scriptPathPermissions; }
135  std::string scriptPathUser() { return _scriptPathUser; }
136  std::string scriptPathGroup() { return _scriptPathGroup; }
137  std::string nodeBluePath() { return _nodeBluePath; }
138  uint32_t nodeBluePathPermissions() { return _nodeBluePathPermissions; }
139  std::string nodeBluePathUser() { return _nodeBluePathUser; }
140  std::string nodeBluePathGroup() { return _nodeBluePathGroup; }
141  std::string nodeBlueDataPath() { return _nodeBlueDataPath; }
142  uint32_t nodeBlueDataPathPermissions() { return _nodeBlueDataPathPermissions; }
143  std::string nodeBlueDataPathUser() { return _nodeBlueDataPathUser; }
144  std::string nodeBlueDataPathGroup() { return _nodeBlueDataPathGroup; }
145  bool nodeBlueDebugOutput() { return _nodeBlueDebugOutput; }
146  uint32_t nodeBlueEventLimit1() { return _nodeBlueEventLimit1; }
147  uint32_t nodeBlueEventLimit2() { return _nodeBlueEventLimit2; }
148  uint32_t nodeBlueEventLimit3() { return _nodeBlueEventLimit3; }
149  uint32_t nodeBlueFrontendHistorySize() { return _nodeBlueFrontendHistorySize; }
150  std::string nodeBlueUriPathsExcludedFromLogin() { return _nodeBlueUriPathsExcludedFromLogin; }
151  std::string adminUiPath() { return _adminUiPath; }
152  uint32_t adminUiPathPermissions() { return _adminUiPathPermissions; }
153  std::string adminUiPathUser() { return _adminUiPathUser; }
154  std::string adminUiPathGroup() { return _adminUiPathGroup; }
155  std::string uiPath() { return _uiPath; }
156  uint32_t uiPathPermissions() { return _uiPathPermissions; }
157  std::string uiPathUser() { return _uiPathUser; }
158  std::string uiPathGroup() { return _uiPathGroup; }
159  std::string uiTranslationPath() { return _uiTranslationPath; }
160  std::string webSshPath() { return _webSshPath; }
161  uint32_t webSshPathPermissions() { return _webSshPathPermissions; }
162  std::string webSshPathUser() { return _webSshPathUser; }
163  std::string webSshPathGroup() { return _webSshPathGroup; }
164  bool reloadRolesOnStartup() { return _reloadRolesOnStartup; }
165  std::string firmwarePath() { return _firmwarePath; }
166  std::string tempPath() { return _tempPath; }
167  std::string lockFilePath() { return _lockFilePath; }
168  void setLockFilePath(const std::string &value) { _lockFilePath = value; }
169  uint32_t lockFilePathPermissions() { return _lockFilePathPermissions; }
170  std::string lockFilePathUser() { return _lockFilePathUser; }
171  std::string lockFilePathGroup() { return _lockFilePathGroup; }
172  std::string phpIniPath() { return _phpIniPath; }
173  std::map<std::string, bool> &tunnelClients() { return _tunnelClients; }
174  std::string gpioPath() { return _gpioPath; }
175  std::vector<uint32_t> exportGpios() { return _exportGpios; }
176  std::string oauthCertPath() { return _oauthCertPath; }
177  std::string oauthKeyPath() { return _oauthKeyPath; }
178  int32_t oauthTokenLifetime() { return _oauthTokenLifetime; }
179  int32_t oauthRefreshTokenLifetime() { return _oauthRefreshTokenLifetime; }
180  uint32_t maxWaitForPhysicalInterfaces() { return _maxWaitForPhysicalInterfaces; }
181  private:
182  BaseLib::SharedObjects *_bl = nullptr;
183  std::string _executablePath;
184  std::string _path;
185  int32_t _lastModified = -1;
186  int32_t _clientSettingsLastModified = -1;
187  int32_t _serverSettingsLastModified = -1;
188  int32_t _mqttSettingsLastModified = -1;
189 
190  std::string _runAsUser;
191  std::string _runAsGroup;
192  int32_t _debugLevel = 3;
193  bool _memoryDebugging = false;
194  std::string _waitForIp4OnInterface;
195  std::string _waitForIp6OnInterface;
196  bool _enableUPnP = true;
197  std::string _uPnPIpAddress;
198  std::string _ssdpIpAddress;
199  int32_t _ssdpPort = 1900;
200  bool _enableMonitoring = true;
201  bool _enableHgdc = false;
202  int32_t _hgdcPort = 2017;
203  bool _devLog = false;
204  bool _ipcLog = false;
205  bool _enableCoreDumps = true;
206  bool _enableNodeBlue = true;
207  bool _setDevicePermissions = true;
208  std::string _workingDirectory;
209  std::string _socketPath;
210  std::string _dataPath;
211  uint32_t _dataPathPermissions = 504;
212  std::string _dataPathUser;
213  std::string _dataPathGroup;
214  std::string _writeableDataPath;
215  uint32_t _writeableDataPathPermissions = 504;
216  std::string _writeableDataPathUser;
217  std::string _writeableDataPathGroup;
218  std::string _familyDataPath;
219  uint32_t _familyDataPathPermissions = 504;
220  std::string _familyDataPathUser;
221  std::string _familyDataPathGroup;
222  bool _databaseSynchronous = true;
223  bool _databaseMemoryJournal = false;
224  bool _databaseWALJournal = true;
225  std::string _databasePath;
226  std::string _factoryDatabasePath;
227  std::string _databaseBackupPath;
228  std::string _factoryDatabaseBackupPath;
229  uint32_t _databaseMaxBackups = 10;
230  std::string _logfilePath;
231  bool _waitForCorrectTime = true;
232  bool _prioritizeThreads = true;
233  uint32_t _maxTotalThreadCount = 0;
234  uint32_t _secureMemorySize = 65536;
235  uint32_t _workerThreadWindow = 3000;
236  uint32_t _scriptEngineThreadCount = 10;
237  uint32_t _scriptEngineServerMaxConnections = 20;
238  uint32_t _scriptEngineMaxThreadsPerScript = 4;
239  int32_t _scriptEngineMaxScriptsPerProcess = -1;
240  int32_t _scriptEngineWatchdogTimeout = -1;
241  bool _scriptEngineManualClientStart = false;
242  uint32_t _nodeBlueProcessingThreadCountServer = 10;
243  uint32_t _nodeBlueProcessingThreadCountNodes = 10;
244  uint32_t _nodeBlueServerMaxConnections = 20;
245  int32_t _maxNodeThreadsPerProcess = 80;
246  int32_t _nodeBlueWatchdogTimeout = -1;
247  bool _nodeBlueManualClientStart = false;
248  std::string _nodeRedJsPath;
249  uint16_t _nodeRedPort = 1999;
250  std::string _nodeOptions;
251  uint32_t _ipcThreadCount = 10;
252  uint32_t _ipcServerMaxConnections = 20;
253  uint32_t _cliServerMaxConnections = 50;
254  uint32_t _rpcServerMaxConnections = 50;
255  int32_t _rpcServerThreadPriority = 0;
256  int32_t _rpcServerThreadPolicy = SCHED_OTHER;
257  uint32_t _rpcClientMaxServers = 50;
258  int32_t _rpcClientThreadPriority = 0;
259  int32_t _rpcClientThreadPolicy = SCHED_OTHER;
260  int32_t _workerThreadPriority = 0;
261  int32_t _workerThreadPolicy = SCHED_OTHER;
262  int32_t _packetQueueThreadPriority = 45;
263  int32_t _packetQueueThreadPolicy = SCHED_FIFO;
264  int32_t _packetReceivedThreadPriority = 0;
265  int32_t _packetReceivedThreadPolicy = SCHED_OTHER;
266  std::string _familyConfigPath;
267  std::string _deviceDescriptionPath;
268  std::string _clientSettingsPath;
269  std::string _serverSettingsPath;
270  std::string _mqttSettingsPath;
271  std::string _cloudUserMapPath;
272  std::string _modulePath;
273  std::string _scriptPath;
274  uint32_t _scriptPathPermissions = 360;
275  std::string _scriptPathUser;
276  std::string _scriptPathGroup;
277  std::string _nodeBluePath;
278  uint32_t _nodeBluePathPermissions = 504;
279  std::string _nodeBluePathUser;
280  std::string _nodeBluePathGroup;
281  std::string _nodeBlueDataPath;
282  uint32_t _nodeBlueDataPathPermissions = 504;
283  std::string _nodeBlueDataPathUser;
284  std::string _nodeBlueDataPathGroup;
285  bool _nodeBlueDebugOutput = false;
286  uint32_t _nodeBlueEventLimit1 = 100;
287  uint32_t _nodeBlueEventLimit2 = 300;
288  uint32_t _nodeBlueEventLimit3 = 400;
289  uint32_t _nodeBlueFrontendHistorySize = 50;
290  std::string _nodeBlueUriPathsExcludedFromLogin;
291  std::string _adminUiPath;
292  uint32_t _adminUiPathPermissions = 504;
293  std::string _adminUiPathUser;
294  std::string _adminUiPathGroup;
295  std::string _uiPath;
296  uint32_t _uiPathPermissions = 504;
297  std::string _uiPathUser;
298  std::string _uiPathGroup;
299  std::string _uiTranslationPath;
300  std::string _webSshPath;
301  uint32_t _webSshPathPermissions = 360;
302  std::string _webSshPathUser;
303  std::string _webSshPathGroup;
304  bool _reloadRolesOnStartup = true;
305  std::string _firmwarePath;
306  std::string _tempPath;
307  std::string _lockFilePath;
308  uint32_t _lockFilePathPermissions = 504;
309  std::string _lockFilePathUser;
310  std::string _lockFilePathGroup;
311  std::string _phpIniPath;
312  std::map<std::string, bool> _tunnelClients;
313  std::string _gpioPath;
314  std::vector<uint32_t> _exportGpios;
315  uint32_t _maxWaitForPhysicalInterfaces = 180;
316 
317  // {{{ OAuth
318  std::string _oauthCertPath;
319  std::string _oauthKeyPath;
320  int32_t _oauthTokenLifetime = 3600;
321  int32_t _oauthRefreshTokenLifetime = 5184000;
322  // }}}
323 
324  void reset();
325 };
326 
327 }
328 #endif /* SETTINGS_H_ */
std::string scriptPathGroup()
Definition: Settings.h:136
uint32_t rpcClientMaxServers()
Definition: Settings.h:117
std::string adminUiPathGroup()
Definition: Settings.h:154
bool enableHgdc()
Definition: Settings.h:60
int32_t scriptEngineWatchdogTimeout()
Definition: Settings.h:100
std::string clientSettingsPath()
Definition: Settings.h:128
std::string tempPath()
Definition: Settings.h:166
int32_t rpcClientThreadPolicy()
Definition: Settings.h:119
std::string dataPathUser()
Definition: Settings.h:71
uint32_t cliServerMaxConnections()
Definition: Settings.h:113
int32_t oauthRefreshTokenLifetime()
Definition: Settings.h:179
bool changed()
Definition: Settings.cpp:173
This is the base library main class.
Definition: BaseLib.h:95
bool databaseSynchronous()
Definition: Settings.h:81
std::string factoryDatabaseBackupPath()
Definition: Settings.h:87
std::string lockFilePathUser()
Definition: Settings.h:170
uint32_t maxTotalThreadCount()
Definition: Settings.h:92
uint32_t scriptEngineMaxThreadsPerScript()
Definition: Settings.h:98
std::string waitForIp4OnInterface()
Definition: Settings.h:53
std::string oauthKeyPath()
Definition: Settings.h:177
std::string writeableDataPathGroup()
Definition: Settings.h:76
uint32_t rpcServerMaxConnections()
Definition: Settings.h:114
void setLockFilePath(const std::string &value)
Definition: Settings.h:168
uint32_t dataPathPermissions()
Definition: Settings.h:70
std::string uiPathUser()
Definition: Settings.h:157
bool memoryDebugging()
Definition: Settings.h:52
std::string mqttSettingsPath()
Definition: Settings.h:130
std::string firmwarePath()
Definition: Settings.h:165
uint32_t scriptEngineThreadCount()
Definition: Settings.h:96
std::string phpIniPath()
Definition: Settings.h:172
std::string writeableDataPathUser()
Definition: Settings.h:75
std::string databaseBackupPath()
Definition: Settings.h:86
Definition: BaseLib.cpp:34
std::string modulePath()
Definition: Settings.h:132
std::string workingDirectory()
Definition: Settings.h:67
std::string familyConfigPath()
Definition: Settings.h:126
uint32_t adminUiPathPermissions()
Definition: Settings.h:152
uint32_t nodeBlueEventLimit3()
Definition: Settings.h:148
uint32_t databaseMaxBackups()
Definition: Settings.h:88
std::string socketPath()
Definition: Settings.h:68
std::string scriptPathUser()
Definition: Settings.h:135
std::string nodeBluePath()
Definition: Settings.h:137
bool scriptEngineManualClientStart()
Definition: Settings.h:101
uint32_t workerThreadWindow()
Definition: Settings.h:95
std::string dataPath()
Definition: Settings.h:69
std::string familyDataPathUser()
Definition: Settings.h:79
std::string factoryDatabasePath()
Definition: Settings.h:85
uint32_t nodeBluePathPermissions()
Definition: Settings.h:138
bool reloadRolesOnStartup()
Definition: Settings.h:164
uint32_t uiPathPermissions()
Definition: Settings.h:156
uint32_t familyDataPathPermissions()
Definition: Settings.h:78
uint32_t nodeBlueEventLimit2()
Definition: Settings.h:147
std::string waitForIp6OnInterface()
Definition: Settings.h:54
int32_t rpcServerThreadPolicy()
Definition: Settings.h:116
std::string webSshPathGroup()
Definition: Settings.h:163
bool enableCoreDumps()
Definition: Settings.h:64
PVariable value
Definition: UiElements.h:217
bool enableMonitoring()
Definition: Settings.h:59
int32_t maxNodeThreadsPerProcess()
Definition: Settings.h:105
int32_t hgdcPort()
Definition: Settings.h:61
uint32_t scriptEngineServerMaxConnections()
Definition: Settings.h:97
uint32_t nodeBlueProcessingThreadCountServer()
Definition: Settings.h:102
std::string lockFilePathGroup()
Definition: Settings.h:171
int32_t packetQueueThreadPriority()
Definition: Settings.h:122
int32_t nodeBlueWatchdogTimeout()
Definition: Settings.h:106
int32_t rpcClientThreadPriority()
Definition: Settings.h:118
int32_t debugLevel()
Definition: Settings.h:51
std::string nodeBlueDataPath()
Definition: Settings.h:141
void load(const std::string &filename, const std::string &executablePath, bool hideOutput=false)
Definition: Settings.cpp:182
uint32_t nodeBlueFrontendHistorySize()
Definition: Settings.h:149
std::string runAsGroup()
Definition: Settings.h:50
bool databaseWALJournal()
Definition: Settings.h:83
std::string nodeBlueDataPathUser()
Definition: Settings.h:143
std::string uiPath()
Definition: Settings.h:155
std::string logfilePath()
Definition: Settings.h:89
std::string oauthCertPath()
Definition: Settings.h:176
uint32_t scriptPathPermissions()
Definition: Settings.h:134
std::string databasePath()
Definition: Settings.h:84
std::string adminUiPathUser()
Definition: Settings.h:153
std::string adminUiPath()
Definition: Settings.h:151
std::vector< uint32_t > exportGpios()
Definition: Settings.h:175
std::string nodeBlueUriPathsExcludedFromLogin()
Definition: Settings.h:150
std::string writeableDataPath()
Definition: Settings.h:73
uint32_t webSshPathPermissions()
Definition: Settings.h:161
std::string scriptPath()
Definition: Settings.h:133
std::string uiTranslationPath()
Definition: Settings.h:159
bool setDevicePermissions()
Definition: Settings.h:66
std::string familyDataPathGroup()
Definition: Settings.h:80
bool waitForCorrectTime()
Definition: Settings.h:90
std::string dataPathGroup()
Definition: Settings.h:72
Definition: Settings.h:41
bool nodeBlueDebugOutput()
Definition: Settings.h:145
std::string deviceDescriptionPath()
Definition: Settings.h:127
std::string nodeBluePathUser()
Definition: Settings.h:139
int32_t packetQueueThreadPolicy()
Definition: Settings.h:123
uint32_t ipcServerMaxConnections()
Definition: Settings.h:112
std::map< std::string, bool > & tunnelClients()
Definition: Settings.h:173
Settings()
Definition: Settings.cpp:36
std::string nodeOptions()
Definition: Settings.h:110
bool prioritizeThreads()
Definition: Settings.h:91
std::string webSshPathUser()
Definition: Settings.h:162
int32_t oauthTokenLifetime()
Definition: Settings.h:178
bool devLog()
Definition: Settings.h:62
int32_t workerThreadPolicy()
Definition: Settings.h:121
void init(BaseLib::SharedObjects *baseLib)
Definition: Settings.cpp:39
std::string nodeBlueDataPathGroup()
Definition: Settings.h:144
int32_t packetReceivedThreadPriority()
Definition: Settings.h:124
std::string runAsUser()
Definition: Settings.h:49
std::string gpioPath()
Definition: Settings.h:174
int32_t ssdpPort()
Definition: Settings.h:58
bool enableNodeBlue()
Definition: Settings.h:65
std::string familyDataPath()
Definition: Settings.h:77
uint32_t lockFilePathPermissions()
Definition: Settings.h:169
uint32_t nodeBlueProcessingThreadCountNodes()
Definition: Settings.h:103
uint32_t writeableDataPathPermissions()
Definition: Settings.h:74
std::string cloudUserMapPath()
Definition: Settings.h:131
std::string uPnPIpAddress()
Definition: Settings.h:56
std::string nodeRedJsPath()
Definition: Settings.h:108
std::string lockFilePath()
Definition: Settings.h:167
void setPrioritizeThreads(bool value)
Definition: Settings.h:93
std::string ssdpIpAddress()
Definition: Settings.h:57
uint32_t ipcThreadCount()
Definition: Settings.h:111
std::string nodeBluePathGroup()
Definition: Settings.h:140
std::string uiPathGroup()
Definition: Settings.h:158
uint32_t nodeBlueEventLimit1()
Definition: Settings.h:146
bool nodeBlueManualClientStart()
Definition: Settings.h:107
std::string webSshPath()
Definition: Settings.h:160
bool databaseMemoryJournal()
Definition: Settings.h:82
virtual ~Settings()
Definition: Settings.h:44
uint32_t nodeBlueServerMaxConnections()
Definition: Settings.h:104
int32_t rpcServerThreadPriority()
Definition: Settings.h:115
int32_t scriptEngineMaxScriptsPerProcess()
Definition: Settings.h:99
uint32_t nodeBlueDataPathPermissions()
Definition: Settings.h:142
uint32_t maxWaitForPhysicalInterfaces()
Definition: Settings.h:180
uint16_t nodeRedPort()
Definition: Settings.h:109
bool enableUPnP()
Definition: Settings.h:55
bool ipcLog()
Definition: Settings.h:63
std::string serverSettingsPath()
Definition: Settings.h:129
int32_t workerThreadPriority()
Definition: Settings.h:120
int32_t packetReceivedThreadPolicy()
Definition: Settings.h:125
uint32_t secureMemorySize()
Definition: Settings.h:94