aboutsummaryrefslogtreecommitdiff
path: root/mod/tenant-service.hxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2024-05-16 14:20:39 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2024-05-16 14:20:39 +0200
commit19c8efe49f23569a53e928488c460e0d3b20cf8a (patch)
tree0e5403a0511eed8c14813f9722ea7c590fa1156d /mod/tenant-service.hxx
parentc4798955364d3a5e4074e56a0038148837c75d82 (diff)
Sketch
Diffstat (limited to 'mod/tenant-service.hxx')
-rw-r--r--mod/tenant-service.hxx15
1 files changed, 14 insertions, 1 deletions
diff --git a/mod/tenant-service.hxx b/mod/tenant-service.hxx
index 9205f76..2ec9cf6 100644
--- a/mod/tenant-service.hxx
+++ b/mod/tenant-service.hxx
@@ -21,7 +21,8 @@ namespace brep
virtual ~tenant_service_base () = default;
};
- // Possible build notifications:
+ // Possible build notifications (see also the unloaded special notification
+ // below):
//
// queued
// building
@@ -121,6 +122,18 @@ namespace brep
const diag_epilogue& log_writer) const noexcept = 0;
};
+ // This notification is only made on unloaded CI requests created with the
+ // ci_start::create() call and until they are loaded with ci_start::load()
+ // or, alternatively, ci_start::abandon().
+ //
+ class tenant_service_build_unloaded: public virtual tenant_service_base
+ {
+ public:
+ virtual function<optional<string> (const tenant_service&)>
+ build_unloaded (const tenant_service&,
+ const diag_epilogue& log_writer) const noexcept = 0;
+ };
+
// Map of service type (tenant_service::type) to service.
//
using tenant_service_map = std::map<string, shared_ptr<tenant_service_base>>;