19 #ifndef SBUILD_CHROOT_FACET_FACET_H
20 #define SBUILD_CHROOT_FACET_FACET_H
22 #include <sbuild/environment.h>
23 #include <sbuild/format-detail.h>
24 #include <sbuild/keyfile.h>
25 #include <sbuild/types.h>
26 #include <sbuild/chroot/chroot.h>
63 typedef std::shared_ptr<facet>
ptr;
87 friend class ::sbuild::chroot::chroot;
106 virtual std::string
const&
180 (
static_cast<int>(lhs) | static_cast<int>(rhs));
194 (
static_cast<int>(lhs) & static_cast<int>(rhs));
virtual void set_chroot(chroot &chroot, bool copy=false)
Set containing chroot.
Definition: facet.cc:45
The chroot should be purged.
Definition: facet.h:59
virtual session_flags get_session_flags() const
Get the session flags of the chroot.
Definition: facet.cc:65
Debian source builder components.
Definition: ctty.cc:31
facet::session_flags operator|(const facet::session_flags &lhs, const facet::session_flags &rhs)
Bitwise-OR of specifed session properties.
Definition: facet.h:176
The chroot supports session creation.
Definition: facet.h:57
chroot * owner
Chroot owning this facet.
Definition: facet.h:166
Container of environment variables.
Definition: environment.h:38
virtual std::string const & get_name() const =0
Get the name of the chroot facet.
Definition: facet.cc:52
Common chroot data.
Definition: chroot.h:50
No flags are set.
Definition: facet.h:56
virtual void get_used_keys(string_list &used_keys) const
Get a list of the keys used during keyfile parsing.
Definition: facet.cc:76
session_flags
Chroot session properties.
Definition: facet.h:54
Base class for all facets.
Definition: facet.h:50
facet()
The constructor.
Definition: facet.cc:35
virtual ~facet()
The destructor.
Definition: facet.cc:40
std::vector< std::string > string_list
A string vector.
Definition: types.h:38
std::shared_ptr< const facet > const_ptr
A shared_ptr to a const chroot facet object.
Definition: facet.h:66
virtual void setup_env(environment &env) const
Set environment.
Definition: facet.cc:60
virtual ptr clone() const =0
Copy the chroot facet.
facet::session_flags operator&(const facet::session_flags &lhs, const facet::session_flags &rhs)
Bitwise-AND of specifed session properties.
Definition: facet.h:190
Configuration file parser.
Definition: keyfile.h:46
std::shared_ptr< facet > ptr
A shared_ptr to a chroot facet object.
Definition: facet.h:63
virtual void get_details(format_detail &detail) const
Get detailed information about the chroot for output.
Definition: facet.cc:71
The chroot supports cloning.
Definition: facet.h:58
virtual void set_keyfile(const keyfile &keyfile)
Set the chroot properties from a keyfile.
Definition: facet.cc:86
virtual void get_keyfile(keyfile &keyfile) const
Copy the chroot properties into a keyfile.
Definition: facet.cc:81