coreapi swarm: rewire connect/disconnect
License: MIT Signed-off-by: Łukasz Magiera <magik6k@gmail.com> This commit was moved from ipfs/interface-go-ipfs-core@a48b2a807b98f5fe7eb4c1148bf938498a4836ce This commit was moved from ipfs/boxo@0f6f6ec8a4e5b41f01c658bf46f4d30b69a7ade5
Łukasz Magiera committed
Sep 17, 2018 at 16:45 UTC
284fd898dc3cf0f88b5816cb53d87d41676e9746
1 file changed
+15
-8
core/coreiface/swarm.go
+15
-8
@@ -2,14 +2,22 @@ package iface
2
3
import (
4
"context"
5
+ "errors"
6
"time"
7
8
ma "gx/ipfs/QmYmsdtJ3HsodkePE3eU3TsCaP2YvPZJ4LoXnNkDE5Tpt7/go-multiaddr"
8
- peer "gx/ipfs/QmbNepETomvmXfz1X5pHNFD2QuPqnqi47dTd94QJWSorQ3/go-libp2p-peer"
9
+ "gx/ipfs/QmZNkThpqfVXs9GNbexPrfBbXSLNYeKrE7jwFM2oqHbyqN/go-libp2p-protocol"
10
+ "gx/ipfs/QmbNepETomvmXfz1X5pHNFD2QuPqnqi47dTd94QJWSorQ3/go-libp2p-peer"
11
+ pstore "gx/ipfs/QmfAQMFpgDU2U4BXG64qVr8HSiictfWvkSBz7Y2oDj65st/go-libp2p-peerstore"
12
)
13
11
-// PeerInfo contains information about a peer
12
-type PeerInfo interface {
14
+var (
15
+ ErrNotConnected = errors.New("not connected")
16
+ ErrConnNotFound = errors.New("conn not found")
17
+ )
18
+
19
+// ConnectionInfo contains information about a peer
20
+type ConnectionInfo interface {
21
// ID returns PeerID
22
ID() peer.ID
23
@@ -20,18 +28,17 @@ type PeerInfo interface {
28
Latency(context.Context) (time.Duration, error)
29
30
// Streams returns list of streams established with the peer
23
- // TODO: should this return multicodecs?
24
- Streams(context.Context) ([]string, error)
31
+ Streams(context.Context) ([]protocol.ID, error)
32
}
33
34
// SwarmAPI specifies the interface to libp2p swarm
35
type SwarmAPI interface {
29
- // Connect to a given address
30
- Connect(context.Context, ma.Multiaddr) error
36
+ // Connect to a given peer
37
+ Connect(context.Context, pstore.PeerInfo) error
38
39
// Disconnect from a given address
40
Disconnect(context.Context, ma.Multiaddr) error
41
42
// Peers returns the list of peers we are connected to
36
- Peers(context.Context) ([]PeerInfo, error)
43
+ Peers(context.Context) ([]ConnectionInfo, error)
44
}