This commit is contained in:
Aria 2025-03-21 22:23:30 +11:00
commit 9c94d113d3
Signed by untrusted user who does not match committer: aria
GPG key ID: 19AB7AA462B8AB3B
10260 changed files with 1237388 additions and 0 deletions

View file

@ -0,0 +1,39 @@
#ifndef STAR_CONFIGURATION_HPP
#define STAR_CONFIGURATION_HPP
#include "StarJson.hpp"
#include "StarThread.hpp"
#include "StarVersion.hpp"
namespace Star {
STAR_CLASS(Configuration);
STAR_EXCEPTION(ConfigurationException, StarException);
class Configuration {
public:
Configuration(Json defaultConfiguration, Json currentConfiguration);
Json defaultConfiguration() const;
Json currentConfiguration() const;
Json get(String const& key) const;
Json getPath(String const& path) const;
Json getDefault(String const& key) const;
Json getDefaultPath(String const& path) const;
void set(String const& key, Json const& value);
void setPath(String const& path, Json const& value);
private:
mutable Mutex m_mutex;
Json m_defaultConfig;
Json m_currentConfig;
};
}
#endif