summaryrefslogtreecommitdiff
path: root/sbuild/sbuild-chroot-directory.h
diff options
context:
space:
mode:
authorRoger Leigh <rleigh@debian.org>2009-07-13 23:26:09 +0100
committerRoger Leigh <rleigh@debian.org>2009-07-13 23:26:09 +0100
commit3c14e12b972ab57f6f81c9a78ea0157ab6562a49 (patch)
tree0bbcc56f2df5b2186d7ead4615492d5e1ee60a53 /sbuild/sbuild-chroot-directory.h
parent6aeff726fbe487c7180ec2618a3358cccb7a07a4 (diff)
downloadschroot-3c14e12b972ab57f6f81c9a78ea0157ab6562a49.tar.gz
[sbuild::chroot_session] New class for session handling
Implement in sbuild::chroot_directory. Rather than handling chroot session logic in the general sbuild::session, this should be handled directly in chroots, which will remove the need for all the special-casing in sbuild::session. Chroot setup can then be handled directly by chroots themselves. Sessions will then be cloned from chroots in exactly the same manner as source chroots.
Diffstat (limited to 'sbuild/sbuild-chroot-directory.h')
-rw-r--r--sbuild/sbuild-chroot-directory.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/sbuild/sbuild-chroot-directory.h b/sbuild/sbuild-chroot-directory.h
index e223e626..993d816b 100644
--- a/sbuild/sbuild-chroot-directory.h
+++ b/sbuild/sbuild-chroot-directory.h
@@ -21,6 +21,7 @@
#include <sbuild/sbuild-config.h>
#include <sbuild/sbuild-chroot-directory-base.h>
+#include <sbuild/sbuild-chroot-session.h>
#ifdef SBUILD_FEATURE_UNION
#include <sbuild/sbuild-chroot-union.h>
#endif // SBUILD_FEATURE_UNION
@@ -31,7 +32,8 @@ namespace sbuild
/**
* A chroot located in the filesystem.
*/
- class chroot_directory : public chroot_directory_base
+ class chroot_directory : public chroot_directory_base,
+ public chroot_session
#ifdef SBUILD_FEATURE_UNION
, public chroot_union
#endif // SBUILD_FEATURE_UNION
@@ -49,6 +51,9 @@ namespace sbuild
virtual chroot::ptr
clone () const;
+ virtual chroot::ptr
+ clone_session (std::string const& session_id) const;
+
#ifdef SBUILD_FEATURE_UNION
virtual chroot::ptr
clone_source () const;