changes for the new interface

This commit is contained in:
Aarsh Shah 2020-05-11 13:07:08 +05:30
parent 7a58f873f4
commit dd0775df6d
5 changed files with 18 additions and 16 deletions

2
go.mod
View File

@ -8,7 +8,7 @@ require (
github.com/ipfs/go-ds-leveldb v0.4.2
github.com/ipfs/go-log v1.0.3
github.com/libp2p/go-buffer-pool v0.0.2
github.com/libp2p/go-libp2p-core v0.5.4-0.20200508062439-98b95a487749
github.com/libp2p/go-libp2p-core v0.5.4-0.20200511073005-dabf5bbfb028
github.com/multiformats/go-base32 v0.0.3
github.com/multiformats/go-multiaddr v0.2.1
github.com/multiformats/go-multiaddr-fmt v0.1.0

2
go.sum
View File

@ -97,6 +97,8 @@ github.com/libp2p/go-libp2p-core v0.5.1 h1:6Cu7WljPQtGY2krBlMoD8L/zH3tMUsCbqNFH7
github.com/libp2p/go-libp2p-core v0.5.1/go.mod h1:uN7L2D4EvPCvzSH5SrhR72UWbnSGpt5/a35Sm4upn4Y=
github.com/libp2p/go-libp2p-core v0.5.4-0.20200508062439-98b95a487749 h1:G0zRpRnpZ8sAZ5E5IRB6x7np9iuulPIWE+y3I/xGNfo=
github.com/libp2p/go-libp2p-core v0.5.4-0.20200508062439-98b95a487749/go.mod h1:uN7L2D4EvPCvzSH5SrhR72UWbnSGpt5/a35Sm4upn4Y=
github.com/libp2p/go-libp2p-core v0.5.4-0.20200511073005-dabf5bbfb028 h1:nQb4SDWcadn/kpWtMwsWweogIzYviVE5qOMT42bkyNE=
github.com/libp2p/go-libp2p-core v0.5.4-0.20200511073005-dabf5bbfb028/go.mod h1:uN7L2D4EvPCvzSH5SrhR72UWbnSGpt5/a35Sm4upn4Y=
github.com/libp2p/go-msgio v0.0.4/go.mod h1:63lBBgOTDKQL6EWazRMCwXsEeEeK9O2Cd+0+6OOuipQ=
github.com/libp2p/go-openssl v0.0.4 h1:d27YZvLoTyMhIN4njrkr8zMDOM4lfpHIp6A+TK9fovg=
github.com/libp2p/go-openssl v0.0.4/go.mod h1:unDrJpgy3oFr+rqXsarWifmJuNnJR4chtO1HmaZjggc=

View File

@ -122,9 +122,9 @@ func (pb *dsProtoBook) SupportsProtocols(p peer.ID, protos ...string) ([]string,
return res, nil
}
func (pb *dsProtoBook) SupportsAnyProtocol(p peer.ID, protos ...string) (bool, error) {
func (pb *dsProtoBook) FirstSupportedProtocol(p peer.ID, protos ...string) (string, error) {
if err := p.Validate(); err != nil {
return false, err
return "", err
}
s := pb.segments.get(p)
@ -133,15 +133,15 @@ func (pb *dsProtoBook) SupportsAnyProtocol(p peer.ID, protos ...string) (bool, e
pmap, err := pb.getProtocolMap(p)
if err != nil {
return false, err
return "", err
}
for _, proto := range protos {
if _, ok := pmap[proto]; ok {
return true, nil
return proto, nil
}
}
return false, nil
return "", nil
}
func (pb *dsProtoBook) RemoveProtocols(p peer.ID, protos ...string) error {

View File

@ -164,9 +164,9 @@ func (pb *memoryProtoBook) SupportsProtocols(p peer.ID, protos ...string) ([]str
return out, nil
}
func (pb *memoryProtoBook) SupportsAnyProtocol(p peer.ID, protos ...string) (bool, error) {
func (pb *memoryProtoBook) FirstSupportedProtocol(p peer.ID, protos ...string) (string, error) {
if err := p.Validate(); err != nil {
return false, err
return "", err
}
s := pb.segments.get(p)
@ -175,8 +175,8 @@ func (pb *memoryProtoBook) SupportsAnyProtocol(p peer.ID, protos ...string) (boo
for _, proto := range protos {
if _, ok := s.protocols[p][proto]; ok {
return true, nil
return proto, nil
}
}
return false, nil
return "", nil
}

View File

@ -243,17 +243,17 @@ func testPeerstoreProtoStore(ps pstore.Peerstore) func(t *testing.T) {
t.Fatal("got wrong supported array: ", supported)
}
b, err := ps.SupportsAnyProtocol(p1, "q", "w", "a", "y", "b")
b, err := ps.FirstSupportedProtocol(p1, "q", "w", "a", "y", "b")
require.NoError(t, err)
require.True(t, b)
require.Equal(t, "a", b)
b, err = ps.SupportsAnyProtocol(p1, "a")
b, err = ps.FirstSupportedProtocol(p1, "q", "x", "z")
require.NoError(t, err)
require.True(t, b)
require.Empty(t, b)
b, err = ps.SupportsAnyProtocol(p1, "q")
b, err = ps.FirstSupportedProtocol(p1, "a")
require.NoError(t, err)
require.False(t, b)
require.Equal(t, "a", b)
protos = []string{"other", "yet another", "one more"}
err = ps.SetProtocols(p1, protos...)