Move Sender interface to network pkg
@perfmode sender is exactly what we need to pass in to dht/bitswap.
Juan Batiz-Benet committed
Sep 15, 2014 at 17:36 UTC
9849794b07f4a88f780a20eef86579f3d0d77595
3 files changed
+15
-12
bitswap/transmission/service_wrapper.go
+3
-1
@@ -4,11 +4,13 @@ import (
4
context "github.com/jbenet/go-ipfs/Godeps/_workspace/src/code.google.com/p/go.net/context"
5
6
bsmsg "github.com/jbenet/go-ipfs/bitswap/message"
7
+ inet "github.com/jbenet/go-ipfs/net"
8
netmsg "github.com/jbenet/go-ipfs/net/message"
9
netservice "github.com/jbenet/go-ipfs/net/service"
10
peer "github.com/jbenet/go-ipfs/peer"
11
)
12
13
+// NewServiceWrapper handles protobuf marshalling
14
func NewServiceWrapper(ctx context.Context, r Receiver) Sender {
15
h := &handlerWrapper{r}
16
s := netservice.NewService(h)
@@ -49,7 +51,7 @@ func (wrapper *handlerWrapper) HandleMessage(
51
}
52
53
type senderWrapper struct {
52
- serviceDelegate netservice.Sender
54
+ serviceDelegate inet.Sender
55
}
56
57
func (wrapper *senderWrapper) SendMessage(
net/interface.go
+12
@@ -4,6 +4,8 @@ import (
4
msg "github.com/jbenet/go-ipfs/net/message"
5
mux "github.com/jbenet/go-ipfs/net/mux"
6
peer "github.com/jbenet/go-ipfs/peer"
7
+
8
+ context "github.com/jbenet/go-ipfs/Godeps/_workspace/src/code.google.com/p/go.net/context"
9
)
10
11
// Network is the interface IPFS uses for connecting to the world.
@@ -31,3 +33,13 @@ type Network interface {
33
// Close terminates all network operation
34
Close() error
35
}
36
+
37
+// Sender interface for network services.
38
+type Sender interface {
39
+ // SendMessage sends out a given message, without expecting a response.
40
+ SendMessage(ctx context.Context, m msg.NetMessage) error
41
+
42
+ // SendRequest sends out a given message, and awaits a response.
43
+ // Set Deadlines or cancellations in the context.Context you pass in.
44
+ SendRequest(ctx context.Context, m msg.NetMessage) (msg.NetMessage, error)
45
+}
net/service/interface.go
deleted
-11
@@ -1,11 +0,0 @@
1
-package service
2
-
3
-import (
4
- context "github.com/jbenet/go-ipfs/Godeps/_workspace/src/code.google.com/p/go.net/context"
5
- msg "github.com/jbenet/go-ipfs/net/message"
6
-)
7
-
8
-type Sender interface {
9
- SendMessage(ctx context.Context, m msg.NetMessage, rid RequestID) error
10
- SendRequest(ctx context.Context, m msg.NetMessage) (msg.NetMessage, error)
11
-}