提交 73a89e16 作者: Brian Tiger Chow

refactor(peerstore) s/Get/FindOrCreate

License: MIT
Signed-off-by: 's avatarBrian Tiger Chow <brian@perfmode.com>
上级 1e007791
...@@ -169,7 +169,7 @@ func peersWithAddresses(ps peer.Peerstore, addrs []string) ([]peer.Peer, error) ...@@ -169,7 +169,7 @@ func peersWithAddresses(ps peer.Peerstore, addrs []string) ([]peer.Peer, error)
peers := make([]peer.Peer, len(pids)) peers := make([]peer.Peer, len(pids))
for i, pid := range pids { for i, pid := range pids {
p, err := ps.Get(pid) p, err := ps.FindOrCreate(pid)
if err != nil { if err != nil {
return nil, err return nil, err
} }
......
...@@ -223,7 +223,7 @@ func initIdentity(cfg *config.Identity, peers peer.Peerstore, online bool) (peer ...@@ -223,7 +223,7 @@ func initIdentity(cfg *config.Identity, peers peer.Peerstore, online bool) (peer
// get peer from peerstore (so it is constructed there) // get peer from peerstore (so it is constructed there)
id := peer.ID(b58.Decode(cfg.PeerID)) id := peer.ID(b58.Decode(cfg.PeerID))
self, err := peers.Get(id) self, err := peers.FindOrCreate(id)
if err != nil { if err != nil {
return nil, err return nil, err
} }
...@@ -269,7 +269,7 @@ func initConnections(ctx context.Context, cfg *config.Config, pstore peer.Peerst ...@@ -269,7 +269,7 @@ func initConnections(ctx context.Context, cfg *config.Config, pstore peer.Peerst
if err != nil { if err != nil {
// return err // return err
} }
npeer, err := pstore.Get(id) npeer, err := pstore.FindOrCreate(id)
if err != nil { if err != nil {
log.Criticalf("Bootstrapping error: %v", err) log.Criticalf("Bootstrapping error: %v", err)
continue continue
......
...@@ -368,7 +368,7 @@ func getOrConstructPeer(peers peer.Peerstore, rpk ci.PubKey) (peer.Peer, error) ...@@ -368,7 +368,7 @@ func getOrConstructPeer(peers peer.Peerstore, rpk ci.PubKey) (peer.Peer, error)
return nil, err return nil, err
} }
npeer, err := peers.Get(rid) npeer, err := peers.FindOrCreate(rid)
if err != nil { if err != nil {
return nil, err // unexpected error happened. return nil, err // unexpected error happened.
} }
......
...@@ -84,7 +84,7 @@ func SubtestSwarm(t *testing.T, addrs []string, MsgNum int) { ...@@ -84,7 +84,7 @@ func SubtestSwarm(t *testing.T, addrs []string, MsgNum int) {
connect := func(s *Swarm, dst peer.Peer) { connect := func(s *Swarm, dst peer.Peer) {
// copy for other peer // copy for other peer
cp, err := s.peers.Get(dst.ID()) cp, err := s.peers.FindOrCreate(dst.ID())
if err != nil { if err != nil {
t.Fatal(err) t.Fatal(err)
} }
......
...@@ -8,7 +8,7 @@ import ( ...@@ -8,7 +8,7 @@ import (
// Peerstore provides a threadsafe collection for peers. // Peerstore provides a threadsafe collection for peers.
type Peerstore interface { type Peerstore interface {
Get(ID) (Peer, error) FindOrCreate(ID) (Peer, error)
Add(Peer) (Peer, error) Add(Peer) (Peer, error)
Delete(ID) error Delete(ID) error
All() (*Map, error) All() (*Map, error)
...@@ -26,7 +26,7 @@ func NewPeerstore() Peerstore { ...@@ -26,7 +26,7 @@ func NewPeerstore() Peerstore {
} }
} }
func (ps *peerstore) Get(i ID) (Peer, error) { func (ps *peerstore) FindOrCreate(i ID) (Peer, error) {
ps.Lock() ps.Lock()
defer ps.Unlock() defer ps.Unlock()
......
...@@ -36,7 +36,7 @@ func TestPeerstore(t *testing.T) { ...@@ -36,7 +36,7 @@ func TestPeerstore(t *testing.T) {
t.Error("these should be the same") t.Error("these should be the same")
} }
p12, err := ps.Get(ID("11140beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a31")) p12, err := ps.FindOrCreate(ID("11140beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a31"))
if err != nil { if err != nil {
t.Error(err) t.Error(err)
} }
...@@ -53,7 +53,7 @@ func TestPeerstore(t *testing.T) { ...@@ -53,7 +53,7 @@ func TestPeerstore(t *testing.T) {
t.Error("These should be the same") t.Error("These should be the same")
} }
p22, err := ps.Get(ID("11140beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a32")) p22, err := ps.FindOrCreate(ID("11140beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a32"))
if err != nil { if err != nil {
t.Error(err) t.Error(err)
} }
...@@ -62,7 +62,7 @@ func TestPeerstore(t *testing.T) { ...@@ -62,7 +62,7 @@ func TestPeerstore(t *testing.T) {
t.Error(errors.New("peers should be the same")) t.Error(errors.New("peers should be the same"))
} }
_, err = ps.Get(ID("11140beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a33")) _, err = ps.FindOrCreate(ID("11140beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a33"))
if err != nil { if err != nil {
t.Error(errors.New("should not have an error here")) t.Error(errors.New("should not have an error here"))
} }
...@@ -73,12 +73,12 @@ func TestPeerstore(t *testing.T) { ...@@ -73,12 +73,12 @@ func TestPeerstore(t *testing.T) {
} }
// reconstruct! // reconstruct!
_, err = ps.Get(ID("11140beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a31")) _, err = ps.FindOrCreate(ID("11140beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a31"))
if err != nil { if err != nil {
t.Error(errors.New("should not have an error anyway. reconstruct!")) t.Error(errors.New("should not have an error anyway. reconstruct!"))
} }
p22, err = ps.Get(ID("11140beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a32")) p22, err = ps.FindOrCreate(ID("11140beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a32"))
if err != nil { if err != nil {
t.Error(err) t.Error(err)
} }
......
...@@ -500,7 +500,7 @@ func (dht *IpfsDHT) betterPeersToQuery(pmes *pb.Message, count int) []peer.Peer ...@@ -500,7 +500,7 @@ func (dht *IpfsDHT) betterPeersToQuery(pmes *pb.Message, count int) []peer.Peer
// getPeer searches the peerstore for a peer with the given peer ID // getPeer searches the peerstore for a peer with the given peer ID
func (dht *IpfsDHT) getPeer(id peer.ID) (peer.Peer, error) { func (dht *IpfsDHT) getPeer(id peer.ID) (peer.Peer, error) {
p, err := dht.peerstore.Get(id) p, err := dht.peerstore.FindOrCreate(id)
if err != nil { if err != nil {
err = fmt.Errorf("Failed to get peer from peerstore: %s", err) err = fmt.Errorf("Failed to get peer from peerstore: %s", err)
log.Error(err) log.Error(err)
......
...@@ -44,7 +44,7 @@ func (dht *IpfsDHT) makePutRecord(key u.Key, value []byte) (*pb.Record, error) { ...@@ -44,7 +44,7 @@ func (dht *IpfsDHT) makePutRecord(key u.Key, value []byte) (*pb.Record, error) {
func (dht *IpfsDHT) getPublicKey(pid peer.ID) (ci.PubKey, error) { func (dht *IpfsDHT) getPublicKey(pid peer.ID) (ci.PubKey, error) {
log.Debug("getPublicKey for: %s", pid) log.Debug("getPublicKey for: %s", pid)
p, err := dht.peerstore.Get(pid) p, err := dht.peerstore.FindOrCreate(pid)
if err == nil { if err == nil {
return p.PubKey(), nil return p.PubKey(), nil
} }
...@@ -67,7 +67,7 @@ func (dht *IpfsDHT) getPublicKey(pid peer.ID) (ci.PubKey, error) { ...@@ -67,7 +67,7 @@ func (dht *IpfsDHT) getPublicKey(pid peer.ID) (ci.PubKey, error) {
func (dht *IpfsDHT) verifyRecord(r *pb.Record) error { func (dht *IpfsDHT) verifyRecord(r *pb.Record) error {
// First, validate the signature // First, validate the signature
p, err := dht.peerstore.Get(peer.ID(r.GetAuthor())) p, err := dht.peerstore.FindOrCreate(peer.ID(r.GetAuthor()))
if err != nil { if err != nil {
return err return err
} }
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论