From 1dec2cdc84a6497c893d84485c6f94589f997215 Mon Sep 17 00:00:00 2001 From: n-peugnet Date: Wed, 1 Sep 2021 19:07:49 +0200 Subject: Prepare for delta encoding --- delta.go | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 delta.go (limited to 'delta.go') diff --git a/delta.go b/delta.go new file mode 100644 index 0000000..423fb07 --- /dev/null +++ b/delta.go @@ -0,0 +1,32 @@ +package main + +import ( + "io" + + "github.com/gabstv/go-bsdiff/pkg/bsdiff" + "github.com/gabstv/go-bsdiff/pkg/bspatch" +) + +type DeltaCodec interface { + Differ + Patcher +} + +type Differ interface { + Diff(source io.Reader, target io.Reader, patch io.Writer) error +} + +type Patcher interface { + Patch(source io.Reader, target io.Writer, patch io.Reader) error +} + +// TODO: maybe move this in it own file ? +type Bsdiff struct{} + +func (*Bsdiff) Diff(source io.Reader, target io.Reader, patch io.Writer) error { + return bsdiff.Reader(source, target, patch) +} + +func (*Bsdiff) Patch(source io.Reader, target io.Writer, patch io.Reader) error { + return bspatch.Reader(source, target, patch) +} -- cgit v1.2.3