aboutsummaryrefslogtreecommitdiff
path: root/object/fetch/errors.go
diff options
context:
space:
mode:
authorGravatar Runxi Yu2026-06-08 07:33:10 +0000
committerGravatar Runxi Yu2026-06-08 07:33:10 +0000
commit3bafb5817c870263dbd9ece2cbddd485664355cc (patch)
treecc5fa6086685ad758e2db2cacfacfcd839a2aef3 /object/fetch/errors.go
parentobject/fetch: Port header.go and merge size.go into it (diff)
object/fetch: Add error wrapper
Diffstat (limited to 'object/fetch/errors.go')
-rw-r--r--object/fetch/errors.go19
1 files changed, 19 insertions, 0 deletions
diff --git a/object/fetch/errors.go b/object/fetch/errors.go
new file mode 100644
index 00000000..84a21bbb
--- /dev/null
+++ b/object/fetch/errors.go
@@ -0,0 +1,19 @@
+package fetch
+
+import (
+ "errors"
+
+ "lindenii.org/go/furgit/errs"
+ "lindenii.org/go/furgit/object/id"
+ "lindenii.org/go/furgit/object/store"
+)
+
+// wrapObjectReadError maps raw object-store lookup failures to fetcher-level
+// object lookup errors.
+func wrapObjectReadError(id id.ObjectID, err error) error {
+ if errors.Is(err, store.ErrObjectNotFound) {
+ return &errs.ObjectMissingError{OID: id}
+ }
+
+ return err
+}