From 3d25bda9d5da6814661828adabe8a09f9d01aefb Mon Sep 17 00:00:00 2001 From: Runxi Yu Date: Thu, 26 Mar 2026 09:14:59 +0000 Subject: network/receivepack: Rename from receivepack --- network/receivepack/service/options.go | 36 ++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 network/receivepack/service/options.go (limited to 'network/receivepack/service/options.go') diff --git a/network/receivepack/service/options.go b/network/receivepack/service/options.go new file mode 100644 index 00000000..7edf4f06 --- /dev/null +++ b/network/receivepack/service/options.go @@ -0,0 +1,36 @@ +package service + +import ( + "io" + "io/fs" + "os" + + objectid "codeberg.org/lindenii/furgit/object/id" + objectstorer "codeberg.org/lindenii/furgit/object/storer" + refstore "codeberg.org/lindenii/furgit/ref/store" +) + +type PromotedObjectPermissions struct { + DirMode fs.FileMode + FileMode fs.FileMode +} + +// Options configures one protocol-independent receive-pack service. +// +// Service borrows all configured dependencies. +// +// Refs and ExistingObjects are required and must be non-nil. +// ObjectsRoot is required if Execute may need to ingest or promote a pack. +// Progress, ProgressFlush, Hook, and HookIO are optional; when provided they +// are also borrowed for the duration of Execute. +type Options struct { + Algorithm objectid.Algorithm + Refs refstore.ReadWriteStore + ExistingObjects objectstorer.Store + ObjectsRoot *os.Root + Progress io.Writer + ProgressFlush func() error + PromotedObjectPermissions *PromotedObjectPermissions + Hook Hook + HookIO HookIO +} -- cgit v1.3.1-10-gc9f91