job Class Reference

Hold configuration data for a single job. More...

#include <rconfig.h>

Collaboration diagram for job:

Collaboration graph
[legend]
List of all members.

Public Types

typedef std::vector< std::string > excludes_type
typedef std::vector< std::string > includes_type
typedef std::vector< std::string > paths_type
enum  rsync_connection_type { connection_remote, connection_local, connection_server }
enum  rsync_behavior_type { behavior_ok, behavior_fail, behavior_retry, behavior_retry_without_hardlinks }

Public Member Functions

 job ()
 C'tor.

 job (const job &a_job)
 C'tor.

void clear (void)
 Clear values.

void assign (const job &a_job)
 Assign values from another job instance.

joboperator= (const job &a_job)
 Assignment.

const std::string generate_archive_path (const std::string &a_path) const
 Generate the archive-path subdirectory for this job.

const std::string generate_source_path (const std::string &a_path) const
 Generate the source path to be passed to rsync on the command line.

const std::string generate_job_id (void) const
 Generate a unique ID string for this job.

void check (void)
 Perform sanity checks for the configuration settings of this job.


Public Attributes

std::string default_config_path
uint16 default_config_line
std::string config_path
uint16 config_line
archive_path archive_path
excludes_type excludes
includes_type includes
std::string groupname
std::string hostname
std::string jobname
paths_type paths
rsync_behavior rsync_behavior
rsync_connection_type rsync_connection
bool rsync_hardlink
std::string rsync_options
std::string rsync_remote_user
std::string rsync_remote_path
std::string rsync_remote_module
uint16 rsync_remote_port
uint16 rsync_retry_count
uint16 rsync_timeout

Friends

class parser

Detailed Description

Hold configuration data for a single job.

Definition at line 136 of file rconfig.h.


Member Typedef Documentation

typedef std::vector<std::string> job::excludes_type
 

Definition at line 150 of file rconfig.h.

typedef std::vector<std::string> job::includes_type
 

Definition at line 151 of file rconfig.h.

typedef std::vector<std::string> job::paths_type
 

Definition at line 152 of file rconfig.h.


Member Enumeration Documentation

enum job::rsync_behavior_type
 

Enumeration values:
behavior_ok 
behavior_fail 
behavior_retry 
behavior_retry_without_hardlinks 

Definition at line 144 of file rconfig.h.

enum job::rsync_connection_type
 

Enumeration values:
connection_remote 
connection_local 
connection_server 

Definition at line 139 of file rconfig.h.


Constructor & Destructor Documentation

job::job  ) 
 

C'tor.

Definition at line 557 of file rconfig.cc.

References clear().

Here is the call graph for this function:

job::job const job a_job  ) 
 

C'tor.

Definition at line 563 of file rconfig.cc.

References assign(), and clear().

Here is the call graph for this function:


Member Function Documentation

void job::assign const job a_job  ) 
 

Assign values from another job instance.

Definition at line 596 of file rconfig.cc.

References archive_path, clear(), config_line, config_path, default_config_line, default_config_path, excludes, groupname, hostname, includes, jobname, paths, rsync_behavior, rsync_connection, rsync_hardlink, rsync_options, rsync_remote_module, rsync_remote_path, rsync_remote_port, rsync_remote_user, rsync_retry_count, and rsync_timeout.

Referenced by job(), and operator=().

Here is the call graph for this function:

void job::check void   ) 
 

Perform sanity checks for the configuration settings of this job.

Definition at line 815 of file rconfig.cc.

References connection_remote, connection_server, ERROR, rsync_connection, and TRY_nomem.

void job::clear void   ) 
 

Clear values.

Definition at line 570 of file rconfig.cc.

References config_line, config_path, connection_remote, default_config_line, default_config_path, excludes, includes, paths, rsync_connection, rsync_hardlink, rsync_options, rsync_remote_module, rsync_remote_path, rsync_remote_port, rsync_remote_user, rsync_retry_count, and rsync_timeout.

Referenced by assign(), and job().

const std::string job::generate_archive_path const std::string &  a_path  )  const
 

Generate the archive-path subdirectory for this job.

Definition at line 633 of file rconfig.cc.

References ERROR, INTERNAL_ERROR, permute_path(), reform_path(), and TRY_nomem.

Referenced by job_archiver::mf_do_chores().

Here is the call graph for this function:

const std::string job::generate_job_id void   )  const
 

Generate a unique ID string for this job.

Definition at line 756 of file rconfig.cc.

References ERROR, and TRY_nomem.

Referenced by generate_source_path(), job_archiver::id(), and job_archiver::start().

const std::string job::generate_source_path const std::string &  a_path  )  const
 

Generate the source path to be passed to rsync on the command line.

Definition at line 720 of file rconfig.cc.

References connection_remote, connection_server, generate_job_id(), rsync_connection, rsync_remote_module, rsync_remote_port, and rsync_remote_user.

Referenced by job_archiver::mf_do_chores().

Here is the call graph for this function:

job & job::operator= const job a_job  ) 
 

Assignment.

Definition at line 625 of file rconfig.cc.

References assign().

Here is the call graph for this function:


Friends And Related Function Documentation

friend class parser [friend]
 

Definition at line 191 of file rconfig.h.


Member Data Documentation

class archive_path job::archive_path
 

Definition at line 166 of file rconfig.h.

Referenced by assign(), and test().

uint16 job::config_line
 

Definition at line 165 of file rconfig.h.

Referenced by assign(), and clear().

std::string job::config_path
 

Definition at line 164 of file rconfig.h.

Referenced by assign(), and clear().

uint16 job::default_config_line
 

Definition at line 163 of file rconfig.h.

Referenced by assign(), and clear().

std::string job::default_config_path
 

Definition at line 162 of file rconfig.h.

Referenced by assign(), and clear().

excludes_type job::excludes
 

Definition at line 167 of file rconfig.h.

Referenced by assign(), clear(), job_archiver::mf_do_chores(), and test().

std::string job::groupname
 

Definition at line 169 of file rconfig.h.

Referenced by assign(), and test().

std::string job::hostname
 

Definition at line 170 of file rconfig.h.

Referenced by assign(), and test().

includes_type job::includes
 

Definition at line 168 of file rconfig.h.

Referenced by assign(), clear(), and job_archiver::mf_do_chores().

std::string job::jobname
 

Definition at line 171 of file rconfig.h.

Referenced by assign().

paths_type job::paths
 

Definition at line 172 of file rconfig.h.

Referenced by assign(), clear(), job_archiver::mf_do_chores(), and test().

class rsync_behavior job::rsync_behavior
 

Definition at line 173 of file rconfig.h.

Referenced by assign(), job_archiver::mf_do_chores(), and test().

rsync_connection_type job::rsync_connection
 

Definition at line 174 of file rconfig.h.

Referenced by assign(), check(), clear(), generate_source_path(), job_archiver::mf_do_chores(), and test().

bool job::rsync_hardlink
 

Definition at line 175 of file rconfig.h.

Referenced by assign(), clear(), job_archiver::mf_do_chores(), and test().

std::string job::rsync_options
 

Definition at line 176 of file rconfig.h.

Referenced by assign(), clear(), job_archiver::mf_do_chores(), and test().

std::string job::rsync_remote_module
 

Definition at line 179 of file rconfig.h.

Referenced by assign(), clear(), and generate_source_path().

std::string job::rsync_remote_path
 

Definition at line 178 of file rconfig.h.

Referenced by assign(), clear(), and job_archiver::mf_do_chores().

uint16 job::rsync_remote_port
 

Definition at line 180 of file rconfig.h.

Referenced by assign(), clear(), generate_source_path(), and test().

std::string job::rsync_remote_user
 

Definition at line 177 of file rconfig.h.

Referenced by assign(), clear(), generate_source_path(), and test().

uint16 job::rsync_retry_count
 

Definition at line 181 of file rconfig.h.

Referenced by assign(), clear(), and job_archiver::mf_do_chores().

uint16 job::rsync_timeout
 

Definition at line 182 of file rconfig.h.

Referenced by assign(), clear(), and job_archiver::mf_do_chores().


The documentation for this class was generated from the following files:
Generated on Mon Jul 12 12:10:40 2004 for rvm by doxygen 1.3.6