4 "github.com/anacrolix/log"
6 "github.com/anacrolix/torrent/metainfo"
9 type PieceCompletionGetSetter interface {
10 Get(metainfo.PieceKey) (Completion, error)
11 Set(_ metainfo.PieceKey, complete bool) error
14 // Implementations track the completion of pieces. It must be concurrent-safe.
15 type PieceCompletion interface {
16 PieceCompletionGetSetter
20 func pieceCompletionForDir(dir string) (ret PieceCompletion) {
21 ret, err := NewDefaultPieceCompletionForDir(dir)
23 log.Printf("couldn't open piece completion db in %q: %s", dir, err)
24 ret = NewMapPieceCompletion()