OpenJAUS SAE SDK  6.0.0
Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
openjaus::system::JsonConfiguration Class Reference

#include <JsonConfiguration.h>

Public Member Functions

 JsonConfiguration ()
 
virtual ~JsonConfiguration ()
 
uint32 getVersion ()
 
std::vector< JsonSettinggetSettings ()
 
bool load (const std::string &filename)
 
bool save (const std::string &filename)
 
bool isDirty ()
 
std::string getErrorString ()
 
bool contains (const std::string &key)
 
void remove (const std::string &key)
 
void clear ()
 
template<class Type >
void set (const std::string &key, Type value)
 
template<class Type >
Type get (const std::string &key, Type defaultValue)
 
virtual std::string toString () const
 

Private Member Functions

void buildMap (std::string keyPrefix, Json::Value &root, std::map< std::string, JsonSetting > &settings)
 
Json::Value generateJson ()
 
void buildHierarchy (std::vector< std::string > &names, Json::Value &root, Json::Value &value)
 

Private Attributes

uint32 version
 
std::map< std::string, JsonSettingsettings
 
std::string errorString
 
bool dirty
 

Friends

OPENJAUS_EXPORT friend std::ostream & operator<< (std::ostream &output, const JsonConfiguration &object)
 
OPENJAUS_EXPORT friend std::ostream & operator<< (std::ostream &output, const JsonConfiguration *object)
 

Constructor & Destructor Documentation

◆ JsonConfiguration()

openjaus::system::JsonConfiguration::JsonConfiguration ( )

◆ ~JsonConfiguration()

openjaus::system::JsonConfiguration::~JsonConfiguration ( )
virtual

Member Function Documentation

◆ buildHierarchy()

void openjaus::system::JsonConfiguration::buildHierarchy ( std::vector< std::string > &  names,
Json::Value &  root,
Json::Value &  value 
)
private

◆ buildMap()

void openjaus::system::JsonConfiguration::buildMap ( std::string  keyPrefix,
Json::Value &  root,
std::map< std::string, JsonSetting > &  settings 
)
private

◆ clear()

void openjaus::system::JsonConfiguration::clear ( )

◆ contains()

bool openjaus::system::JsonConfiguration::contains ( const std::string &  key)

◆ generateJson()

Json::Value openjaus::system::JsonConfiguration::generateJson ( )
private

◆ get()

template<class Type >
Type openjaus::system::JsonConfiguration::get ( const std::string &  key,
Type  defaultValue 
)
inline

◆ getErrorString()

std::string openjaus::system::JsonConfiguration::getErrorString ( )

◆ getSettings()

std::vector< JsonSetting > openjaus::system::JsonConfiguration::getSettings ( )

◆ getVersion()

uint32 openjaus::system::JsonConfiguration::getVersion ( )

◆ isDirty()

bool openjaus::system::JsonConfiguration::isDirty ( )

◆ load()

bool openjaus::system::JsonConfiguration::load ( const std::string &  filename)

◆ remove()

void openjaus::system::JsonConfiguration::remove ( const std::string &  key)

◆ save()

bool openjaus::system::JsonConfiguration::save ( const std::string &  filename)

◆ set()

template<class Type >
void openjaus::system::JsonConfiguration::set ( const std::string &  key,
Type  value 
)
inline

◆ toString()

std::string openjaus::system::JsonConfiguration::toString ( ) const
virtual

Friends And Related Function Documentation

◆ operator<< [1/2]

OPENJAUS_EXPORT friend std::ostream& operator<< ( std::ostream &  output,
const JsonConfiguration object 
)
friend

◆ operator<< [2/2]

OPENJAUS_EXPORT friend std::ostream& operator<< ( std::ostream &  output,
const JsonConfiguration object 
)
friend

Member Data Documentation

◆ dirty

bool openjaus::system::JsonConfiguration::dirty
private

◆ errorString

std::string openjaus::system::JsonConfiguration::errorString
private

◆ settings

std::map<std::string, JsonSetting> openjaus::system::JsonConfiguration::settings
private

◆ version

uint32 openjaus::system::JsonConfiguration::version
private

The documentation for this class was generated from the following files: