]> Sergey Matveev's repositories - btrtrc.git/blobdiff - storage/file_storage_piece.go
Rework storage interfaces to make them simpler to implement
[btrtrc.git] / storage / file_storage_piece.go
index 915d5d0d1b637c76eec8956b880f2448ed70fdbd..5dce1ea391988ccea655084d706bd115ec4c6ac2 100644 (file)
@@ -11,7 +11,7 @@ type fileStoragePiece struct {
        *fileTorrentStorage
        p metainfo.Piece
        io.WriterAt
-       io.ReaderAt
+       io.ReaderAt
 }
 
 func (me *fileStoragePiece) pieceKey() metainfo.PieceKey {
@@ -45,15 +45,7 @@ func (fs *fileStoragePiece) MarkComplete() error {
        return nil
 }
 
-func (fsp *fileStoragePiece) ReadAt(b []byte, off int64) (n int, err error) {
-       n, err = fsp.r.ReadAt(b, off)
-       if n != 0 {
-               err = nil
-               return
-       }
-       if off < 0 || off >= fsp.p.Length() {
-               return
-       }
-       fsp.completion.Set(fsp.pieceKey(), false)
-       return
+func (fs *fileStoragePiece) MarkNotComplete() error {
+       fs.completion.Set(fs.pieceKey(), false)
+       return nil
 }