rvm
1.11
|
A configuration manager support class: Used to parse a configuration file from the perspective of a job context. More...
#include <rconfig.h>
Public Member Functions | |
job_parser (job *a_job, const std::string &a_path, uint16 &a_line, std::istream &a_in, const std::string &a_block_delimiter, const bool a_default_context) | |
C'tor. More... | |
Private Member Functions | |
const std::string | location (void) |
Construct a string with the current location of the parser in a configuration file. More... | |
void | read_job (const std::string &a_path) |
Read a job configuration file, used by the "include" command. More... | |
void | parse (void) |
Job context parser. More... | |
void | parse_archive_path (const std::string &a_value) |
Parse an "archive-path" command. More... | |
void | parse_clear (const std::string &a_value) |
Parse a "clear" command. More... | |
void | parse_exclude_from (const std::string &a_value) |
Parse an "exclude-from" command. More... | |
void | parse_include_from (const std::string &a_value) |
Parse an "include-from" command. More... | |
void | parse_groupname (const std::string &a_value) |
Parse a "groupname" command. More... | |
void | parse_hostname (const std::string &a_value) |
Parse a "hostname" command. More... | |
void | parse_include (const std::string &a_value) |
Parse an "include" command. More... | |
void | parse_jobname (const std::string &a_value) |
Parse a "jobname" command. More... | |
void | parse_path (const std::string &a_value) |
Parse a "path" command. More... | |
void | parse_rsync_behavior (const std::string &a_value) |
Parse an "rsync-behavior" command. More... | |
void | parse_rsync_connection_type (const std::string &a_value) |
Parse an "rsync-connection-type" command. More... | |
void | parse_rsync_hardlink (const std::string &a_value) |
Parse an "rsync-hardlink" command. More... | |
void | parse_rsync_multi_hardlink (const std::string &a_value) |
Parse an "rsync-multi-hardlink" command. More... | |
void | parse_rsync_multi_hardlink_max (const std::string &a_value) |
Parse an "rsync-multi-hardlink-max" command. More... | |
void | parse_rsync_options (const std::string &a_value) |
Parse an "rsync-options" command. More... | |
void | parse_ssh_options (const std::string &a_value) |
Parse an "ssh-options" command. More... | |
void | parse_rsync_options_context (const std::string &a_value) |
Parse an rsync-options context. More... | |
void | parse_ssh_options_context (const std::string &a_value) |
Parse an ssh-options context. More... | |
void | parse_rsync_remote_user (const std::string &a_value) |
Parse a "remote-user" command. More... | |
void | parse_rsync_remote_path (const std::string &a_value) |
Parse an "rsync-remote-path" command. More... | |
void | parse_rsync_remote_port (const std::string &a_value) |
Parse an "rsync-remote-port" command. More... | |
void | parse_rsync_remote_module (const std::string &a_value) |
Parse an "rsync-remote-module" command. More... | |
void | parse_rsync_retry_count (const std::string &a_value) |
Parse an "rsync-retry-count" command. More... | |
void | parse_rsync_retry_delay (const std::string &a_value) |
Parse an "rsync-retry-delay" command. More... | |
void | parse_rsync_timeout (const std::string &a_value) |
Parse an "rsync-timeout" command. More... | |
Private Attributes | |
job * | m_job |
const std::string * | m_path |
std::istream * | m_in |
uint16 * | m_line |
const std::string * | m_delimiter |
bool | m_default_context |
A configuration manager support class: Used to parse a configuration file from the perspective of a job context.
job_parser::job_parser | ( | job * | a_job, |
const std::string & | a_path, | ||
uint16 & | a_line, | ||
std::istream & | a_in, | ||
const std::string & | a_block_delimiter, | ||
const bool | a_default_context = false |
||
) |
C'tor.
Definition at line 2624 of file rconfig.cc.
References m_default_context, m_delimiter, m_in, m_job, m_line, m_path, and parse().
Referenced by read_job().
|
private |
|
private |
Job context parser.
Definition at line 2679 of file rconfig.cc.
References err_unknown, ERROR, ERROR_INSTANCE, location(), m_default_context, m_delimiter, m_in, parse_archive_path(), parse_clear(), parse_exclude_from(), parse_groupname(), parse_hostname(), parse_include(), parse_include_from(), parse_jobname(), parse_line(), parse_path(), parse_rsync_behavior(), parse_rsync_connection_type(), parse_rsync_hardlink(), parse_rsync_multi_hardlink(), parse_rsync_multi_hardlink_max(), parse_rsync_options(), parse_rsync_options_context(), parse_rsync_remote_module(), parse_rsync_remote_path(), parse_rsync_remote_port(), parse_rsync_remote_user(), parse_rsync_retry_count(), parse_rsync_retry_delay(), parse_rsync_timeout(), parse_ssh_options(), parse_ssh_options_context(), error::push_back(), and TRY_nomem.
Referenced by job_parser().
|
private |
Parse an "archive-path" command.
Definition at line 2824 of file rconfig.cc.
References TRY, and TRY_nomem.
Referenced by parse().
|
private |
Parse a "clear" command.
Definition at line 2833 of file rconfig.cc.
References job::archive_path, rsync_behavior::clear(), ERROR, job::excludes, job::groupname, job::hostname, job::includes, job::jobname, m_delimiter, m_job, job::paths, job::rsync_behavior, job::rsync_options, job::rsync_remote_module, job::rsync_remote_path, job::rsync_remote_port, job::rsync_remote_user, job::ssh_options, timestamp::str(), TRY, and TRY_nomem.
Referenced by parse().
|
private |
Parse an "exclude-from" command.
Definition at line 2890 of file rconfig.cc.
References ERROR, m_path, parse_dirname(), directory::path(), TRY, and TRY_nomem.
Referenced by parse().
|
private |
Parse a "groupname" command.
Definition at line 2958 of file rconfig.cc.
References TRY_nomem.
Referenced by parse().
|
private |
Parse a "hostname" command.
Definition at line 2964 of file rconfig.cc.
References TRY_nomem.
Referenced by parse().
|
private |
Parse an "include" command.
Definition at line 2970 of file rconfig.cc.
References err_unknown, ERROR, ERROR_INSTANCE, m_path, parse_dirname(), directory::path(), error::push_back(), read_job(), TRY_instead, and TRY_nomem.
Referenced by parse().
|
private |
Parse an "include-from" command.
Definition at line 2924 of file rconfig.cc.
References ERROR, m_path, parse_dirname(), directory::path(), TRY, and TRY_nomem.
Referenced by parse().
|
private |
Parse a "jobname" command.
Definition at line 3023 of file rconfig.cc.
References TRY_nomem.
Referenced by parse().
|
private |
Parse a "path" command.
Definition at line 3029 of file rconfig.cc.
References TRY_nomem.
Referenced by parse().
|
private |
Parse an "rsync-behavior" command.
Definition at line 3035 of file rconfig.cc.
References timestamp::str(), TRY, and TRY_nomem.
Referenced by parse().
|
private |
Parse an "rsync-connection-type" command.
Definition at line 3055 of file rconfig.cc.
References job::connection_local, job::connection_remote, job::connection_server, job::connection_ssh_local, ERROR, timestamp::str(), TRY, and TRY_nomem.
Referenced by parse().
|
private |
Parse an "rsync-hardlink" command.
Definition at line 3082 of file rconfig.cc.
References ERROR, timestamp::str(), TRY, and TRY_nomem.
Referenced by parse().
|
private |
Parse an "rsync-multi-hardlink" command.
Definition at line 3117 of file rconfig.cc.
References ERROR, timestamp::str(), TRY, and TRY_nomem.
Referenced by parse().
|
private |
Parse an "rsync-multi-hardlink-max" command.
Definition at line 3153 of file rconfig.cc.
References ERROR, TRY_instead, and TRY_nomem.
Referenced by parse().
|
private |
Parse an "rsync-options" command.
Definition at line 3168 of file rconfig.cc.
References m_delimiter, and TRY_nomem.
Referenced by parse(), and parse_rsync_options_context().
|
private |
Parse an rsync-options context.
Definition at line 3196 of file rconfig.cc.
References ERROR, m_in, parse_rsync_options(), and TRY_nomem.
Referenced by parse().
|
private |
Parse an "rsync-remote-module" command.
Definition at line 3311 of file rconfig.cc.
References TRY_nomem.
Referenced by parse().
|
private |
Parse an "rsync-remote-path" command.
Definition at line 3290 of file rconfig.cc.
References TRY_nomem.
Referenced by parse().
|
private |
Parse an "rsync-remote-port" command.
Definition at line 3296 of file rconfig.cc.
References timestamp::str(), TRY, and TRY_nomem.
Referenced by parse().
|
private |
Parse a "remote-user" command.
Definition at line 3284 of file rconfig.cc.
References TRY_nomem.
Referenced by parse().
|
private |
Parse an "rsync-retry-count" command.
Definition at line 3317 of file rconfig.cc.
References timestamp::str(), TRY, and TRY_nomem.
Referenced by parse().
|
private |
Parse an "rsync-retry-delay" command.
Definition at line 3332 of file rconfig.cc.
References timestamp::str(), TRY, and TRY_nomem.
Referenced by parse().
|
private |
Parse an "rsync-timeout" command.
Definition at line 3347 of file rconfig.cc.
References timestamp::str(), TRY, and TRY_nomem.
Referenced by parse().
|
private |
Parse an "ssh-options" command.
Definition at line 3182 of file rconfig.cc.
References m_delimiter, and TRY_nomem.
Referenced by parse(), and parse_ssh_options_context().
|
private |
Parse an ssh-options context.
Definition at line 3240 of file rconfig.cc.
References ERROR, m_in, parse_ssh_options(), and TRY_nomem.
Referenced by parse().
|
private |
Read a job configuration file, used by the "include" command.
Definition at line 2659 of file rconfig.cc.
References ERROR, job_parser(), m_default_context, m_job, and TRY_nomem.
Referenced by parse_include().
|
private |
Definition at line 379 of file rconfig.h.
Referenced by job_parser(), parse(), and read_job().
|
private |
Definition at line 378 of file rconfig.h.
Referenced by job_parser(), parse(), parse_clear(), parse_rsync_options(), and parse_ssh_options().
|
private |
Definition at line 376 of file rconfig.h.
Referenced by job_parser(), parse(), parse_rsync_options_context(), and parse_ssh_options_context().
|
private |
Definition at line 374 of file rconfig.h.
Referenced by job_parser(), parse_clear(), and read_job().
|
private |
Definition at line 377 of file rconfig.h.
Referenced by job_parser(), and location().
|
private |
Definition at line 375 of file rconfig.h.
Referenced by job_parser(), location(), parse_exclude_from(), parse_include(), and parse_include_from().