diff --git a/exchange/bitswap/bitswap.go b/exchange/bitswap/bitswap.go index bdc17ff96..a883e4b03 100644 --- a/exchange/bitswap/bitswap.go +++ b/exchange/bitswap/bitswap.go @@ -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) } diff --git a/exchange/bitswap/network/interface.go b/exchange/bitswap/network/interface.go index 7c34a352b..18bb1df83 100644 --- a/exchange/bitswap/network/interface.go +++ b/exchange/bitswap/network/interface.go @@ -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, diff --git a/exchange/bitswap/network/ipfs_impl.go b/exchange/bitswap/network/ipfs_impl.go index 841688162..ea98cc87f 100644 --- a/exchange/bitswap/network/ipfs_impl.go +++ b/exchange/bitswap/network/ipfs_impl.go @@ -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 { diff --git a/exchange/bitswap/testnet/virtual.go b/exchange/bitswap/testnet/virtual.go index 9426176a2..639bb00d3 100644 --- a/exchange/bitswap/testnet/virtual.go +++ b/exchange/bitswap/testnet/virtual.go @@ -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 }