mirror of
https://github.com/ipfs/kubo.git
synced 2025-09-10 05:52:20 +08:00
bitswap: remove DialPeer from interface
Bitswap doesn't usually care about dialing. the underlying network adapter can make sure of that.
This commit is contained in:
@ -385,11 +385,6 @@ func (bs *bitswap) ReceiveError(err error) {
|
||||
// send strives to ensure that accounting is always performed when a message is
|
||||
// sent
|
||||
func (bs *bitswap) send(ctx context.Context, p peer.ID, m bsmsg.BitSwapMessage) error {
|
||||
log.Event(ctx, "DialPeer", p)
|
||||
err := bs.network.DialPeer(ctx, p)
|
||||
if err != nil {
|
||||
return errors.Wrap(err)
|
||||
}
|
||||
if err := bs.network.SendMessage(ctx, p, m); err != nil {
|
||||
return errors.Wrap(err)
|
||||
}
|
||||
|
@ -14,9 +14,6 @@ var ProtocolBitswap protocol.ID = "/ipfs/bitswap"
|
||||
// BitSwapNetwork provides network connectivity for BitSwap sessions
|
||||
type BitSwapNetwork interface {
|
||||
|
||||
// DialPeer ensures there is a connection to peer.
|
||||
DialPeer(context.Context, peer.ID) error
|
||||
|
||||
// SendMessage sends a BitSwap message to a peer.
|
||||
SendMessage(
|
||||
context.Context,
|
||||
|
@ -34,10 +34,6 @@ type impl struct {
|
||||
receiver Receiver
|
||||
}
|
||||
|
||||
func (bsnet *impl) DialPeer(ctx context.Context, p peer.ID) error {
|
||||
return bsnet.host.Connect(ctx, peer.PeerInfo{ID: p})
|
||||
}
|
||||
|
||||
func (bsnet *impl) SendMessage(
|
||||
ctx context.Context,
|
||||
p peer.ID,
|
||||
@ -45,6 +41,12 @@ func (bsnet *impl) SendMessage(
|
||||
|
||||
log := log.Prefix("bitswap net SendMessage to %s", p)
|
||||
|
||||
// ensure we're connected
|
||||
//TODO(jbenet) move this into host.NewStream?
|
||||
if err := bsnet.host.Connect(ctx, peer.PeerInfo{ID: p}); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
log.Debug("opening stream")
|
||||
s, err := bsnet.host.NewStream(ProtocolBitswap, p)
|
||||
if err != nil {
|
||||
@ -69,6 +71,12 @@ func (bsnet *impl) SendRequest(
|
||||
|
||||
log := log.Prefix("bitswap net SendRequest to %s", p)
|
||||
|
||||
// ensure we're connected
|
||||
//TODO(jbenet) move this into host.NewStream?
|
||||
if err := bsnet.host.Connect(ctx, peer.PeerInfo{ID: p}); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
log.Debug("opening stream")
|
||||
s, err := bsnet.host.NewStream(ProtocolBitswap, p)
|
||||
if err != nil {
|
||||
|
@ -2,7 +2,6 @@ package bitswap
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"fmt"
|
||||
|
||||
context "github.com/jbenet/go-ipfs/Godeps/_workspace/src/code.google.com/p/go.net/context"
|
||||
bsmsg "github.com/jbenet/go-ipfs/exchange/bitswap/message"
|
||||
@ -178,14 +177,6 @@ func (nc *networkClient) Provide(ctx context.Context, k util.Key) error {
|
||||
return nc.routing.Provide(ctx, k)
|
||||
}
|
||||
|
||||
func (nc *networkClient) DialPeer(ctx context.Context, p peer.ID) error {
|
||||
// no need to do anything because dialing isn't a thing in this test net.
|
||||
if !nc.network.HasPeer(p) {
|
||||
return fmt.Errorf("Peer not in network: %s", p)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (nc *networkClient) SetDelegate(r bsnet.Receiver) {
|
||||
nc.Receiver = r
|
||||
}
|
||||
|
Reference in New Issue
Block a user