Remove Each(), add basic stats

This commit is contained in:
Alexander Neumann
2015-02-17 23:05:23 +01:00
parent 4bb7f2f2ed
commit b6f25aa690
6 changed files with 82 additions and 71 deletions

View File

@@ -1,7 +1,6 @@
package main
import (
"encoding/json"
"errors"
"fmt"
"os"
@@ -32,10 +31,10 @@ func list_keys(s restic.Server) error {
return err
}
s.Each(backend.Key, func(id backend.ID, data []byte, err error) {
k := restic.Key{}
err = json.Unmarshal(data, &k)
s.EachID(backend.Key, func(id backend.ID) {
k, err := restic.LoadKey(s, id)
if err != nil {
fmt.Fprintf(os.Stderr, "LoadKey() failed: %v\n", err)
return
}

View File

@@ -33,17 +33,12 @@ func (cmd CmdList) Execute(args []string) error {
return err
}
var (
t backend.Type
each func(backend.Type, func(backend.ID, []byte, error)) error = s.Each
)
var t backend.Type
switch args[0] {
case "data":
t = backend.Data
each = s.EachDecrypted
case "trees":
t = backend.Tree
each = s.EachDecrypted
case "snapshots":
t = backend.Snapshot
case "keys":
@@ -54,11 +49,7 @@ func (cmd CmdList) Execute(args []string) error {
return errors.New("invalid type")
}
return each(t, func(id backend.ID, data []byte, err error) {
if t == backend.Data || t == backend.Tree {
fmt.Printf("%s %s\n", id, backend.Hash(data))
} else {
fmt.Printf("%s\n", id)
}
return s.EachID(t, func(id backend.ID) {
fmt.Printf("%s\n", id)
})
}