refactor(peerstore) s/Get/FindOrCreate
License: MIT Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
Brian Tiger Chow committed
Dec 8, 2014 at 01:09 UTC
73a89e161df4e5ec6627371d7091f00990c85ad2
8 files changed
+15
-15
core/commands/swarm.go
+1
-1
@@ -169,7 +169,7 @@ func peersWithAddresses(ps peer.Peerstore, addrs []string) ([]peer.Peer, error)
169
170
peers := make([]peer.Peer, len(pids))
171
for i, pid := range pids {
172
- p, err := ps.Get(pid)
172
+ p, err := ps.FindOrCreate(pid)
173
if err != nil {
174
return nil, err
175
}
core/core.go
+2
-2
@@ -223,7 +223,7 @@ func initIdentity(cfg *config.Identity, peers peer.Peerstore, online bool) (peer
223
224
// get peer from peerstore (so it is constructed there)
225
id := peer.ID(b58.Decode(cfg.PeerID))
226
- self, err := peers.Get(id)
226
+ self, err := peers.FindOrCreate(id)
227
if err != nil {
228
return nil, err
229
}
@@ -269,7 +269,7 @@ func initConnections(ctx context.Context, cfg *config.Config, pstore peer.Peerst
269
if err != nil {
270
// return err
271
}
272
- npeer, err := pstore.Get(id)
272
+ npeer, err := pstore.FindOrCreate(id)
273
if err != nil {
274
log.Criticalf("Bootstrapping error: %v", err)
275
continue
crypto/spipe/handshake.go
+1
-1
@@ -368,7 +368,7 @@ func getOrConstructPeer(peers peer.Peerstore, rpk ci.PubKey) (peer.Peer, error)
368
return nil, err
369
}
370
371
- npeer, err := peers.Get(rid)
371
+ npeer, err := peers.FindOrCreate(rid)
372
if err != nil {
373
return nil, err // unexpected error happened.
374
}
net/swarm/swarm_test.go
+1
-1
@@ -84,7 +84,7 @@ func SubtestSwarm(t *testing.T, addrs []string, MsgNum int) {
84
connect := func(s *Swarm, dst peer.Peer) {
85
// copy for other peer
86
87
- cp, err := s.peers.Get(dst.ID())
87
+ cp, err := s.peers.FindOrCreate(dst.ID())
88
if err != nil {
89
t.Fatal(err)
90
}
peer/peerstore.go
+2
-2
@@ -8,7 +8,7 @@ import (
8
9
// Peerstore provides a threadsafe collection for peers.
10
type Peerstore interface {
11
- Get(ID) (Peer, error)
11
+ FindOrCreate(ID) (Peer, error)
12
Add(Peer) (Peer, error)
13
Delete(ID) error
14
All() (*Map, error)
@@ -26,7 +26,7 @@ func NewPeerstore() Peerstore {
26
}
27
}
28
29
-func (ps *peerstore) Get(i ID) (Peer, error) {
29
+func (ps *peerstore) FindOrCreate(i ID) (Peer, error) {
30
ps.Lock()
31
defer ps.Unlock()
32
peer/peerstore_test.go
+5
-5
@@ -36,7 +36,7 @@ func TestPeerstore(t *testing.T) {
36
t.Error("these should be the same")
37
}
38
39
- p12, err := ps.Get(ID("11140beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a31"))
39
+ p12, err := ps.FindOrCreate(ID("11140beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a31"))
40
if err != nil {
41
t.Error(err)
42
}
@@ -53,7 +53,7 @@ func TestPeerstore(t *testing.T) {
53
t.Error("These should be the same")
54
}
55
56
- p22, err := ps.Get(ID("11140beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a32"))
56
+ p22, err := ps.FindOrCreate(ID("11140beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a32"))
57
if err != nil {
58
t.Error(err)
59
}
@@ -62,7 +62,7 @@ func TestPeerstore(t *testing.T) {
62
t.Error(errors.New("peers should be the same"))
63
}
64
65
- _, err = ps.Get(ID("11140beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a33"))
65
+ _, err = ps.FindOrCreate(ID("11140beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a33"))
66
if err != nil {
67
t.Error(errors.New("should not have an error here"))
68
}
@@ -73,12 +73,12 @@ func TestPeerstore(t *testing.T) {
73
}
74
75
// reconstruct!
76
- _, err = ps.Get(ID("11140beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a31"))
76
+ _, err = ps.FindOrCreate(ID("11140beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a31"))
77
if err != nil {
78
t.Error(errors.New("should not have an error anyway. reconstruct!"))
79
}
80
81
- p22, err = ps.Get(ID("11140beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a32"))
81
+ p22, err = ps.FindOrCreate(ID("11140beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a32"))
82
if err != nil {
83
t.Error(err)
84
}
routing/dht/dht.go
+1
-1
@@ -500,7 +500,7 @@ func (dht *IpfsDHT) betterPeersToQuery(pmes *pb.Message, count int) []peer.Peer
500
501
// getPeer searches the peerstore for a peer with the given peer ID
502
func (dht *IpfsDHT) getPeer(id peer.ID) (peer.Peer, error) {
503
- p, err := dht.peerstore.Get(id)
503
+ p, err := dht.peerstore.FindOrCreate(id)
504
if err != nil {
505
err = fmt.Errorf("Failed to get peer from peerstore: %s", err)
506
log.Error(err)
routing/dht/records.go
+2
-2
@@ -44,7 +44,7 @@ func (dht *IpfsDHT) makePutRecord(key u.Key, value []byte) (*pb.Record, error) {
44
45
func (dht *IpfsDHT) getPublicKey(pid peer.ID) (ci.PubKey, error) {
46
log.Debug("getPublicKey for: %s", pid)
47
- p, err := dht.peerstore.Get(pid)
47
+ p, err := dht.peerstore.FindOrCreate(pid)
48
if err == nil {
49
return p.PubKey(), nil
50
}
@@ -67,7 +67,7 @@ func (dht *IpfsDHT) getPublicKey(pid peer.ID) (ci.PubKey, error) {
67
68
func (dht *IpfsDHT) verifyRecord(r *pb.Record) error {
69
// First, validate the signature
70
- p, err := dht.peerstore.Get(peer.ID(r.GetAuthor()))
70
+ p, err := dht.peerstore.FindOrCreate(peer.ID(r.GetAuthor()))
71
if err != nil {
72
return err
73
}