diff options
author | n-peugnet <n.peugnet@free.fr> | 2021-10-06 11:34:14 +0200 |
---|---|---|
committer | n-peugnet <n.peugnet@free.fr> | 2021-10-06 11:34:14 +0200 |
commit | fccc89de47a3ed5fc576f28f7f02b1111a59c0c4 (patch) | |
tree | 9de36f7e6eab07c78d59428b2345aceab34df9cd /delta.go | |
parent | 9b9710511b0dbe51ac030ef908f9468103b0bd0a (diff) | |
download | dna-backup-fccc89de47a3ed5fc576f28f7f02b1111a59c0c4.tar.gz dna-backup-fccc89de47a3ed5fc576f28f7f02b1111a59c0c4.zip |
refactor: move repo and delta in their own package
Diffstat (limited to 'delta.go')
-rw-r--r-- | delta.go | 59 |
1 files changed, 0 insertions, 59 deletions
diff --git a/delta.go b/delta.go deleted file mode 100644 index a127580..0000000 --- a/delta.go +++ /dev/null @@ -1,59 +0,0 @@ -package main - -import ( - "io" - - "github.com/gabstv/go-bsdiff/pkg/bsdiff" - "github.com/gabstv/go-bsdiff/pkg/bspatch" - "github.com/mdvan/fdelta" -) - -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 -} - -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) -} - -type Fdelta struct{} - -func (Fdelta) Diff(source io.Reader, target io.Reader, patch io.Writer) error { - sourceBuf, err := io.ReadAll(source) - if err != nil { - return err - } - targetBuf, err := io.ReadAll(target) - if err != nil { - return err - } - _, err = patch.Write(fdelta.Create(sourceBuf, targetBuf)) - return err -} - -func (Fdelta) Patch(source io.Reader, target io.Writer, patch io.Reader) error { - sourceBuf, err := io.ReadAll(source) - if err != nil { - return err - } - patchBuf, err := io.ReadAll(patch) - if err != nil { - return err - } - targetBuf, err := fdelta.Apply(sourceBuf, patchBuf) - if err != nil { - return err - } - _, err = target.Write(targetBuf) - return err -} |