sbuild::chroot_facet_source Class Reference

Chroot support for clonable sources. More...

#include <sbuild-chroot-facet-source.h>

Inheritance diagram for sbuild::chroot_facet_source:

Inheritance graph
[legend]
Collaboration diagram for sbuild::chroot_facet_source:

Collaboration graph
[legend]

List of all members.

Public Types

typedef std::tr1::shared_ptr
< chroot_facet_source
ptr
 A shared_ptr to a chroot facet object.
typedef std::tr1::shared_ptr
< const chroot_facet_source
const_ptr
 A shared_ptr to a const chroot facet object.

Public Member Functions

virtual ~chroot_facet_source ()
 The destructor.
virtual chroot_facet::ptr clone () const
 Copy the chroot facet.
virtual std::string const & get_name () const
 Get the name of the chroot facet.
virtual void setup_env (chroot const &chroot, environment &env) const
 Set environment.
virtual chroot::session_flags get_session_flags (chroot const &chroot) const
 Get the session flags of the chroot.
virtual void get_details (chroot const &chroot, format_detail &detail) const
 Get detailed information about the chroot for output.
virtual void get_keyfile (chroot const &chroot, keyfile &keyfile) const
 Copy the chroot properties into a keyfile.
virtual void set_keyfile (chroot &chroot, keyfile const &keyfile, string_list &used_keys)
 Set the chroot properties from a keyfile.

Static Public Member Functions

static ptr create ()
 Create a chroot facet.

Private Member Functions

 chroot_facet_source ()
 The constructor.


Detailed Description

Chroot support for clonable sources.

A chroot may offer a "source" facet in addition to its normal "session" copy, to allow for maintenence of the source data. This facet is installed into source chroots to identify them as such, and so modify their session behaviour.


Member Function Documentation

chroot_facet_source::ptr chroot_facet_source::create (  )  [static]

Create a chroot facet.

Returns:
a shared_ptr to the new chroot facet.

References chroot_facet_source().

Referenced by sbuild::chroot_facet_source_clonable::clone_source_setup().

Here is the caller graph for this function:

chroot_facet::ptr chroot_facet_source::clone (  )  const [virtual]

Copy the chroot facet.

This is a virtual copy constructor.

Returns:
a shared_ptr to the new copy of the chroot facet.

Implements sbuild::chroot_facet.

References chroot_facet_source().

std::string const & chroot_facet_source::get_name (  )  const [virtual]

Get the name of the chroot facet.

Returns:
the chroot facet name.

Implements sbuild::chroot_facet.

void chroot_facet_source::setup_env ( chroot const &  chroot,
environment env 
) const [virtual]

Set environment.

Set the environment that the setup scripts will see during execution.

Parameters:
chroot the chroot to use.
env the environment to set.

Implements sbuild::chroot_facet.

sbuild::chroot::session_flags chroot_facet_source::get_session_flags ( chroot const &  chroot  )  const [virtual]

Get the session flags of the chroot.

These determine how the Session controlling the chroot will operate.

Parameters:
chroot the chroot to use.
Returns:
the session flags.

Implements sbuild::chroot_facet.

References sbuild::chroot::SESSION_NOFLAGS.

void chroot_facet_source::get_details ( chroot const &  chroot,
format_detail detail 
) const [virtual]

Get detailed information about the chroot for output.

Parameters:
chroot the chroot to use.
detail the details to output to.

Implements sbuild::chroot_facet.

void chroot_facet_source::get_keyfile ( chroot const &  chroot,
keyfile keyfile 
) const [virtual]

Copy the chroot properties into a keyfile.

The keyfile group with the name of the chroot will be set; if it already exists, it will be removed before setting it.

Parameters:
chroot the chroot to use.
keyfile the keyfile to use.

Implements sbuild::chroot_facet.

void chroot_facet_source::set_keyfile ( chroot chroot,
keyfile const &  keyfile,
string_list used_keys 
) [virtual]

Set the chroot properties from a keyfile.

The chroot name must have previously been set, so that the correct keyfile group may be determined.

Parameters:
chroot the chroot to use.
keyfile the keyfile to get the properties from.
used_keys a list of the keys used will be set.

Implements sbuild::chroot_facet.


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

Generated on Tue Jan 18 21:49:01 2011 for sbuild by  doxygen 1.5.6