aboutsummaryrefslogtreecommitdiff
path: root/object/store/base_quarantine.go
diff options
context:
space:
mode:
Diffstat (limited to 'object/store/base_quarantine.go')
-rw-r--r--object/store/base_quarantine.go17
1 files changed, 17 insertions, 0 deletions
diff --git a/object/store/base_quarantine.go b/object/store/base_quarantine.go
new file mode 100644
index 00000000..754fb3ee
--- /dev/null
+++ b/object/store/base_quarantine.go
@@ -0,0 +1,17 @@
+package objectstore
+
+// BaseQuarantine is one quarantined write. It is intended to be embedded.
+type BaseQuarantine interface {
+ // Reader exposes the objects written into this quarantine.
+ Reader
+
+ // Promote publishes quarantined writes into their final destination.
+ //
+ // Promote invalidates the receiver.
+ Promote() error
+
+ // Discard abandons quarantined writes.
+ //
+ // Discard invalidates the receiver.
+ Discard() error
+}