@cryptotaxi247 / kubo / commits / a3487eb49

fix(bs:net) add peer to receiver interface

Brian Tiger Chow committed Sep 13, 2014 at 16:30 UTC a3487eb4915d64ff2b8705d61f123cac3c4a55dd
5 files changed +9 -7
bitswap/bitswap.go
+2 -2
@@ -283,8 +283,8 @@ func (bs *BitSwap) SetStrategy(sf StrategyFunc) {
283 }
284 }
285
286 -func (r *BitSwap) ReceiveMessage(
287 - ctx context.Context, incoming bsmsg.BitSwapMessage) (
286 +func (bs *BitSwap) ReceiveMessage(
287 + ctx context.Context, sender *peer.Peer, incoming bsmsg.BitSwapMessage) (
288 bsmsg.BitSwapMessage, *peer.Peer, error) {
289 return nil, nil, errors.New("TODO implement")
290 }
bitswap/network/interface.go
+2 -1
@@ -15,6 +15,7 @@ type Sender interface {
15
16 // TODO(brian): consider returning a NetMessage
17 type Receiver interface {
18 - ReceiveMessage(ctx context.Context, incoming bsmsg.BitSwapMessage) (
18 + ReceiveMessage(
19 + ctx context.Context, sender *peer.Peer, incoming bsmsg.BitSwapMessage) (
20 outgoing bsmsg.BitSwapMessage, destination *peer.Peer, err error)
21 }
bitswap/network/service_wrapper.go
+1 -1
@@ -31,7 +31,7 @@ func (wrapper *handlerWrapper) HandleMessage(
31 return nil, err
32 }
33
34 - bsmsg, p, err := wrapper.bitswapDelegate.ReceiveMessage(ctx, received)
34 + bsmsg, p, err := wrapper.bitswapDelegate.ReceiveMessage(ctx, incoming.Peer(), received)
35 if err != nil {
36 return nil, err
37 }
bitswap/receiver.go
+2 -2
@@ -16,12 +16,12 @@ type receiver struct {
16 }
17
18 func (r *receiver) ReceiveMessage(
19 - ctx context.Context, incoming bsmsg.BitSwapMessage) (
19 + ctx context.Context, sender *peer.Peer, incoming bsmsg.BitSwapMessage) (
20 bsmsg.BitSwapMessage, *peer.Peer, error) {
21 if r.delegate == nil {
22 return nil, nil, nil
23 }
24 - return r.delegate.ReceiveMessage(ctx, incoming)
24 + return r.delegate.ReceiveMessage(ctx, sender, incoming)
25 }
26
27 func (r *receiver) Delegate(delegate bsnet.Receiver) {
bitswap/receiver_test.go
+2 -1
@@ -5,9 +5,10 @@ import (
5
6 context "github.com/jbenet/go-ipfs/Godeps/_workspace/src/code.google.com/p/go.net/context"
7 bsmsg "github.com/jbenet/go-ipfs/bitswap/message"
8 + peer "github.com/jbenet/go-ipfs/peer"
9 )
10
11 func TestDoesntPanicIfDelegateNotPresent(t *testing.T) {
12 r := receiver{}
12 - r.ReceiveMessage(context.Background(), bsmsg.New())
13 + r.ReceiveMessage(context.Background(), &peer.Peer{}, bsmsg.New())
14 }