Manager configuration class. More...
#include <ManagerConfig.h>
Public Member Functions | |
void | configure (coil::Properties &prop) |
Specify the configuration information to the Property. | |
coil::Properties | getConfig () const |
Get the configuration. | |
void | init (int argc, char **argv) |
Initialization. | |
ManagerConfig () | |
Constructor. | |
ManagerConfig (int argc, char **argv) | |
Constructor. | |
virtual | ~ManagerConfig (void) |
Destructor. | |
Static Public Attributes | |
static const char * | config_file_env = "RTC_MANAGER_CONFIG" |
The environment variable to distinguish the default configuration file path. | |
static const char * | config_file_path [] |
The default configuration file path for manager. | |
Protected Member Functions | |
bool | fileExist (const std::string &filename) |
Check the file existence. | |
bool | findConfigFile () |
Find the configuration file. | |
void | parseArgs (int argc, char **argv) |
Parse the command arguments. | |
void | setSystemInformation (coil::Properties &prop) |
Set system information. | |
Protected Attributes | |
coil::Properties | m_argprop |
configuration properties from arguments | |
std::string | m_configFile |
Manager's configuration file path. | |
bool | m_isMaster |
Manager master flag. |
Manager configuration class.
Modify Manager's configuration. This class receives the command line arguments and will be instantiated. Set property information of Manager with the configuration file specified by the command line argument or the environment variable etc.
The priorities of each configuration are as follows:
If the command option "-d" is specified (even if specify configuration file by "-f" option), the embedded configuration values will be used.
Definition at line 84 of file ManagerConfig.h.
RTC::ManagerConfig::ManagerConfig | ( | int | argc, |
char ** | argv | ||
) |
Constructor.
Initialize configuration information by given arguments.
argc | Number of command line arguments |
argv | The command line arguments |
Definition at line 64 of file ManagerConfig.cpp.
RTC::ManagerConfig::~ManagerConfig | ( | void | ) | [virtual] |
Destructor.
Definition at line 77 of file ManagerConfig.cpp.
void RTC::ManagerConfig::configure | ( | coil::Properties & | prop | ) |
Specify the configuration information to the Property.
Configure to the properties specified by Manager's configuration
prop | The target properties to configure |
Definition at line 100 of file ManagerConfig.cpp.
bool RTC::ManagerConfig::fileExist | ( | const std::string & | filename | ) | [protected] |
Check the file existence.
Confirm whether the specified file exists
filename | The target confirmation file |
Reimplemented in ManagerConfig::ManagerConfigMock.
Definition at line 264 of file ManagerConfig.cpp.
bool RTC::ManagerConfig::findConfigFile | ( | ) | [protected] |
Find the configuration file.
Find the configuration file and configure it. Confirm the file existence when the configuration file has already configured.
The priority of the configuration file
The command option¡äthe environment variable¡äthe default file¡ä the default configuration
Default force option(-d): Ignore any default files and use the default configuration.
Reimplemented in ManagerConfig::ManagerConfigMock.
Definition at line 187 of file ManagerConfig.cpp.
Get the configuration.
Get the configuration. When this operation is called before calling init() function, return the default configuration statically defined, When this operation is called after calling init() function, return the initialized configuration according to the command line arguments, the environment variables etc. (Not implemented)
void RTC::ManagerConfig::init | ( | int | argc, |
char ** | argv | ||
) |
Initialization.
Initialize with command line options. The following command options are available.
argc | Number of command line arguments |
argv | The command line arguments |
Definition at line 88 of file ManagerConfig.cpp.
void RTC::ManagerConfig::parseArgs | ( | int | argc, |
char ** | argv | ||
) | [protected] |
Parse the command arguments.
argc | Number of command line arguments |
argv | The command line arguments |
Reimplemented in ManagerConfig::ManagerConfigMock.
Definition at line 127 of file ManagerConfig.cpp.
void RTC::ManagerConfig::setSystemInformation | ( | coil::Properties & | prop | ) | [protected] |
Set system information.
Get the following system info. and set them to Manager's properties.
prop | Properties to set system information |
Reimplemented in ManagerConfig::ManagerConfigMock.
Definition at line 229 of file ManagerConfig.cpp.
const char * RTC::ManagerConfig::config_file_env = "RTC_MANAGER_CONFIG" [static] |
The environment variable to distinguish the default configuration file path.
Definition at line 107 of file ManagerConfig.h.
const char * RTC::ManagerConfig::config_file_path [static] |
{ "./rtc.conf", "/etc/rtc.conf", "/etc/rtc/rtc.conf", "/usr/local/etc/rtc.conf", "/usr/local/etc/rtc/rtc.conf", NULL }
The default configuration file path for manager.
Definition at line 95 of file ManagerConfig.h.
coil::Properties RTC::ManagerConfig::m_argprop [protected] |
configuration properties from arguments
Definition at line 376 of file ManagerConfig.h.
std::string RTC::ManagerConfig::m_configFile [protected] |
Manager's configuration file path.
Definition at line 385 of file ManagerConfig.h.
bool RTC::ManagerConfig::m_isMaster [protected] |
Manager master flag.
true:master,false:slave
Reimplemented in ManagerConfig::ManagerConfigMock.
Definition at line 400 of file ManagerConfig.h.