aboutsummaryrefslogtreecommitdiff
path: root/object/store/dual/new.go
blob: ef38bc7aa5d35c778fda7a61421009367e9886f9 (about) (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
package dual

import (
	objectstore "codeberg.org/lindenii/furgit/object/store"
	objectmix "codeberg.org/lindenii/furgit/object/store/mix"
)

// New creates one dual object store from borrowed object-wise and pack-wise
// stores.
//
// Labels: Deps-Borrowed, Life-Parent.
func New(
	object interface {
		objectstore.Reader
		objectstore.ObjectWriter
		objectstore.ObjectQuarantiner
	},
	pack interface {
		objectstore.Reader
		objectstore.PackWriter
		objectstore.PackQuarantiner
	},
) *Dual {
	return &Dual{
		object: object,
		pack:   pack,
		reader: objectmix.New(object, pack),
	}
}