renaming and removing empty strategy file
Jeromy committed
Dec 16, 2014 at 02:14 UTC
90a30961ded5283afdf08ca72b62dbc6b81059c2
3 files changed
+2
-87
exchange/bitswap/strategy/ledgermanager.go
renamed
+2
@@ -12,6 +12,8 @@ import (
12
u "github.com/jbenet/go-ipfs/util"
13
)
14
15
+var log = u.Logger("strategy")
16
+
17
// LedgerMap lists Ledgers by their Partner key.
18
type ledgerMap map[peerKey]*ledger
19
exchange/bitswap/strategy/ledgermanager_test.go
renamed
exchange/bitswap/strategy/strategy.go
deleted
-87
@@ -1,87 +0,0 @@
1
-package strategy
2
-
3
-import (
4
- //blocks "github.com/jbenet/go-ipfs/blocks"
5
- //bstore "github.com/jbenet/go-ipfs/blocks/blockstore"
6
- //wl "github.com/jbenet/go-ipfs/exchange/bitswap/wantlist"
7
- //peer "github.com/jbenet/go-ipfs/peer"
8
- u "github.com/jbenet/go-ipfs/util"
9
-)
10
-
11
-var log = u.Logger("strategy")
12
-
13
-/*
14
-// TODO niceness should be on a per-peer basis. Use-case: Certain peers are
15
-// "trusted" and/or controlled by a single human user. The user may want for
16
-// these peers to exchange data freely
17
-func New(nice bool) Strategy {
18
- var stratFunc strategyFunc
19
- if nice {
20
- stratFunc = yesManStrategy
21
- } else {
22
- stratFunc = standardStrategy
23
- }
24
- return &strategist{
25
- strategyFunc: stratFunc,
26
- }
27
-}
28
-
29
-type strategist struct {
30
- strategyFunc
31
-}
32
-
33
-func (s *strategist) GetTasks(bandwidth int, ledgers *LedgerManager, bs bstore.Blockstore) ([]*Task, error) {
34
- var tasks []*Task
35
-
36
- ledgers.lock.RLock()
37
- var partners []peer.Peer
38
- for _, ledger := range ledgers.ledgerMap {
39
- if s.strategyFunc(ledger) {
40
- partners = append(partners, ledger.Partner)
41
- }
42
- }
43
- ledgers.lock.RUnlock()
44
- if len(partners) == 0 {
45
- return nil, nil
46
- }
47
-
48
- bandwidthPerPeer := bandwidth / len(partners)
49
- for _, p := range partners {
50
- blksForPeer, err := s.getSendableBlocks(ledgers.ledger(p).wantList, bs, bandwidthPerPeer)
51
- if err != nil {
52
- return nil, err
53
- }
54
- tasks = append(tasks, &Task{
55
- Peer: p,
56
- Blocks: blksForPeer,
57
- })
58
- }
59
-
60
- return tasks, nil
61
-}
62
-
63
-func (s *strategist) getSendableBlocks(wantlist *wl.Wantlist, bs bstore.Blockstore, bw int) ([]*blocks.Block, error) {
64
- var outblocks []*blocks.Block
65
- for _, e := range wantlist.Entries() {
66
- block, err := bs.Get(e.Value)
67
- if err == bstore.ErrNotFound {
68
- continue
69
- }
70
- if err != nil {
71
- return nil, err
72
- }
73
- outblocks = append(outblocks, block)
74
- bw -= len(block.Data)
75
- if bw <= 0 {
76
- break
77
- }
78
- }
79
- return outblocks, nil
80
-}
81
-
82
-func test() {}
83
-func (s *strategist) Seed(int64) {
84
- // TODO
85
-}
86
-
87
-*/