schroot_base::main Class Reference

Frontend base for schroot programs. More...

#include <schroot-base-main.h>

Inheritance diagram for schroot_base::main:

Inheritance graph
[legend]

List of all members.

Public Member Functions

 main (std::string const &program_name, std::string const &program_usage, options::ptr const &program_options, bool use_syslog)
 The constructor.
virtual ~main ()
 The destructor.
int run (int argc, char *argv[])
 Run the program.
virtual void action_help (std::ostream &stream)
 Print help information.
virtual void action_version (std::ostream &stream)
 Print version information.

Protected Member Functions

virtual int run_impl ()=0
 Run the program.

Protected Attributes

std::string program_name
 The name of the program.
std::string program_usage
 The usage text of the program.
options::ptr program_options
 The program options.
bool use_syslog
 Use syslog for message logging>.


Detailed Description

Frontend base for schroot programs.

This class is used to "run" schroot programs. It contains functionality common to all programs, such as help and version output.


Constructor & Destructor Documentation

main::main ( std::string const &  program_name,
std::string const &  program_usage,
options::ptr const &  program_options,
bool  use_syslog 
)

The constructor.

Parameters:
program_name the program name.
program_usage the program usage message.
program_options the command-line options to use.
use_syslog whether to open a connection to the system logger.

main::~main (  )  [virtual]


Member Function Documentation

int main::run ( int  argc,
char *  argv[] 
)

Run the program.

Parameters:
argc the number of arguments
argv argument vector
Returns:
0 on success, 1 on failure or the exit status of the chroot command.

References sbuild::DEBUG_CRITICAL, sbuild::debug_level, sbuild::log_exception_error(), sbuild::log_info(), program_name, program_options, run_impl(), and use_syslog.

void main::action_help ( std::ostream &  stream  )  [virtual]

Print help information.

Parameters:
stream the stream to output to.

References program_name, program_options, and program_usage.

Referenced by schroot::main_base::run_impl(), schroot_releaselock::main::run_impl(), schroot_listmounts::main::run_impl(), and csbuild::main::run_impl().

Here is the caller graph for this function:

void main::action_version ( std::ostream &  stream  )  [virtual]

Print version information.

Parameters:
stream the stream to output to.

References program_name.

Referenced by schroot::main_base::run_impl(), schroot_releaselock::main::run_impl(), schroot_listmounts::main::run_impl(), and csbuild::main::run_impl().

Here is the caller graph for this function:

virtual int schroot_base::main::run_impl (  )  [protected, pure virtual]

Run the program.

This is the program-specific run method which must be implemented in a derived class.

Returns:
0 on success, 1 on failure or the exit status of the chroot command.

Implemented in schroot::main_base, schroot_listmounts::main, schroot_releaselock::main, and csbuild::main.

Referenced by run().

Here is the caller graph for this function:


Member Data Documentation

std::string schroot_base::main::program_name [protected]

std::string schroot_base::main::program_usage [protected]

The usage text of the program.

Referenced by action_help().

The program options.

Referenced by action_help(), and run().

Use syslog for message logging>.

Referenced by run().


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

Generated on Mon May 5 09:27:52 2008 for schroot by  doxygen 1.5.5