diff --git a/net/service/service.go b/net/service/service.go index c43b10ffa..27dc6f1b1 100644 --- a/net/service/service.go +++ b/net/service/service.go @@ -49,6 +49,7 @@ type Service interface { // SetHandler assigns the request Handler for this service. SetHandler(Handler) + GetHandler() Handler } // Service is a networking component that protocols can use to multiplex @@ -246,3 +247,8 @@ func (s *service) handleIncomingMessage(ctx context.Context, m msg.NetMessage) { func (s *service) SetHandler(h Handler) { s.Handler = h } + +// GetHandler returns the request Handler for this service. +func (s *service) GetHandler() Handler { + return s.Handler +} diff --git a/net/service/service_test.go b/net/service/service_test.go index 251be311e..e28f5654a 100644 --- a/net/service/service_test.go +++ b/net/service/service_test.go @@ -51,8 +51,8 @@ func TestServiceHandler(t *testing.T) { } m1 := msg.New(peer1, d) - s.Incoming <- m1 - m2 := <-s.Outgoing + s.GetPipe().Incoming <- m1 + m2 := <-s.GetPipe().Outgoing d, rid, err := unwrapData(m2.Data()) if err != nil { @@ -87,10 +87,10 @@ func TestServiceRequest(t *testing.T) { go func() { for { select { - case m := <-s1.Outgoing: - s2.Incoming <- m - case m := <-s2.Outgoing: - s1.Incoming <- m + case m := <-s1.GetPipe().Outgoing: + s2.GetPipe().Incoming <- m + case m := <-s2.GetPipe().Outgoing: + s1.GetPipe().Incoming <- m case <-ctx.Done(): return } @@ -127,10 +127,10 @@ func TestServiceRequestTimeout(t *testing.T) { for { <-time.After(time.Millisecond) select { - case m := <-s1.Outgoing: - s2.Incoming <- m - case m := <-s2.Outgoing: - s1.Incoming <- m + case m := <-s1.GetPipe().Outgoing: + s2.GetPipe().Incoming <- m + case m := <-s2.GetPipe().Outgoing: + s1.GetPipe().Incoming <- m case <-ctx.Done(): return } diff --git a/routing/dht/dht_test.go b/routing/dht/dht_test.go index 23bdb88e7..1d7413fd5 100644 --- a/routing/dht/dht_test.go +++ b/routing/dht/dht_test.go @@ -39,7 +39,7 @@ func setupDHT(t *testing.T, p *peer.Peer) *IpfsDHT { } d := NewDHT(p, peerstore, net, dhts, ds.NewMapDatastore()) - dhts.Handler = d + dhts.SetHandler(d) return d }