add torrent storage capacity func

This commit is contained in:
nikk gitanes
2023-08-27 02:38:43 +03:00
parent 3463464902
commit e480ecb093

View File

@@ -6,7 +6,7 @@ import (
"server/torr/storage"
"github.com/anacrolix/torrent/metainfo"
storage2 "github.com/anacrolix/torrent/storage"
ts "github.com/anacrolix/torrent/storage"
)
type Storage struct {
@@ -24,16 +24,20 @@ func NewStorage(capacity int64) *Storage {
return stor
}
func (s *Storage) OpenTorrent(info *metainfo.Info, infoHash metainfo.Hash) (storage2.TorrentImpl, error) {
func (s *Storage) OpenTorrent(info *metainfo.Info, infoHash metainfo.Hash) (ts.TorrentImpl, error) {
capFunc := func() (int64, bool) {
return s.capacity, true
}
s.mu.Lock()
defer s.mu.Unlock()
ch := NewCache(s.capacity, s)
ch.Init(info, infoHash)
s.caches[infoHash] = ch
// return ch, nil
return storage2.TorrentImpl{
Piece: ch.Piece,
Close: ch.Close,
return ts.TorrentImpl{
Piece: ch.Piece,
Close: ch.Close,
Capacity: &capFunc,
}, nil
}