aboutsummaryrefslogtreecommitdiff
path: root/object/store/dual/quarantine.go
diff options
context:
space:
mode:
Diffstat (limited to 'object/store/dual/quarantine.go')
-rw-r--r--object/store/dual/quarantine.go114
1 files changed, 0 insertions, 114 deletions
diff --git a/object/store/dual/quarantine.go b/object/store/dual/quarantine.go
deleted file mode 100644
index fb1048af..00000000
--- a/object/store/dual/quarantine.go
+++ /dev/null
@@ -1,114 +0,0 @@
-package dual
-
-import (
- "io"
-
- objectid "codeberg.org/lindenii/furgit/object/id"
- objectstore "codeberg.org/lindenii/furgit/object/store"
- objectmix "codeberg.org/lindenii/furgit/object/store/mix"
- objecttype "codeberg.org/lindenii/furgit/object/type"
-)
-
-// quarantine is one coordinated dual quarantine over both stores.
-type quarantine struct {
- objectQ objectstore.ObjectQuarantine
- packQ objectstore.PackQuarantine
- reader objectstore.Reader
-}
-
-var (
- _ objectstore.ObjectQuarantine = (*quarantine)(nil)
- _ objectstore.PackQuarantine = (*quarantine)(nil)
- _ objectstore.Quarantine = (*quarantine)(nil)
-)
-
-func newQuarantine(
- objectQ objectstore.ObjectQuarantine,
- packQ objectstore.PackQuarantine,
-) *quarantine {
- return &quarantine{
- objectQ: objectQ,
- packQ: packQ,
- reader: objectmix.New(objectQ, packQ),
- }
-}
-
-// ReadBytesFull reads a full serialized object as "type size\0content" from
-// either quarantined store.
-func (quarantine *quarantine) ReadBytesFull(id objectid.ObjectID) ([]byte, error) {
- return quarantine.reader.ReadBytesFull(id)
-}
-
-// ReadBytesContent reads an object's type and content bytes from either
-// quarantined store.
-func (quarantine *quarantine) ReadBytesContent(id objectid.ObjectID) (objecttype.Type, []byte, error) {
- return quarantine.reader.ReadBytesContent(id)
-}
-
-// ReadReaderFull reads a full serialized object stream as
-// "type size\0content" from either quarantined store.
-func (quarantine *quarantine) ReadReaderFull(id objectid.ObjectID) (io.ReadCloser, error) {
- return quarantine.reader.ReadReaderFull(id)
-}
-
-// ReadReaderContent reads an object's type, declared content length, and
-// content stream from either quarantined store.
-func (quarantine *quarantine) ReadReaderContent(id objectid.ObjectID) (objecttype.Type, int64, io.ReadCloser, error) {
- return quarantine.reader.ReadReaderContent(id)
-}
-
-// ReadSize reads an object's declared content length from either quarantined
-// store.
-func (quarantine *quarantine) ReadSize(id objectid.ObjectID) (int64, error) {
- return quarantine.reader.ReadSize(id)
-}
-
-// ReadHeader reads an object's type and declared content length from either
-// quarantined store.
-func (quarantine *quarantine) ReadHeader(id objectid.ObjectID) (objecttype.Type, int64, error) {
- return quarantine.reader.ReadHeader(id)
-}
-
-// Refresh refreshes both quarantined stores and the combined quarantined reader.
-func (quarantine *quarantine) Refresh() error {
- err := quarantine.objectQ.Refresh()
- if err != nil {
- return err
- }
-
- err = quarantine.packQ.Refresh()
- if err != nil {
- return err
- }
-
- return quarantine.reader.Refresh()
-}
-
-// WriteReaderContent writes one typed object content stream to the quarantined
-// object-wise store.
-func (quarantine *quarantine) WriteReaderContent(ty objecttype.Type, size int64, src io.Reader) (objectid.ObjectID, error) {
- return quarantine.objectQ.WriteReaderContent(ty, size, src)
-}
-
-// WriteReaderFull writes one full serialized object stream as
-// "type size\0content" to the quarantined object-wise store.
-func (quarantine *quarantine) WriteReaderFull(src io.Reader) (objectid.ObjectID, error) {
- return quarantine.objectQ.WriteReaderFull(src)
-}
-
-// WriteBytesContent writes one typed object content byte slice to the
-// quarantined object-wise store.
-func (quarantine *quarantine) WriteBytesContent(ty objecttype.Type, content []byte) (objectid.ObjectID, error) {
- return quarantine.objectQ.WriteBytesContent(ty, content)
-}
-
-// WriteBytesFull writes one full serialized object byte slice as
-// "type size\0content" to the quarantined object-wise store.
-func (quarantine *quarantine) WriteBytesFull(raw []byte) (objectid.ObjectID, error) {
- return quarantine.objectQ.WriteBytesFull(raw)
-}
-
-// WritePack ingests one pack stream into the quarantined pack-wise store.
-func (quarantine *quarantine) WritePack(src io.Reader, opts objectstore.PackWriteOptions) error {
- return quarantine.packQ.WritePack(src, opts)
-}