Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
G
go-ipfs
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
jihao
go-ipfs
Commits
73a89e16
提交
73a89e16
authored
12月 08, 2014
作者:
Brian Tiger Chow
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
refactor(peerstore) s/Get/FindOrCreate
License: MIT Signed-off-by:
Brian Tiger Chow
<
brian@perfmode.com
>
上级
1e007791
隐藏空白字符变更
内嵌
并排
正在显示
8 个修改的文件
包含
15 行增加
和
15 行删除
+15
-15
swarm.go
core/commands/swarm.go
+1
-1
core.go
core/core.go
+2
-2
handshake.go
crypto/spipe/handshake.go
+1
-1
swarm_test.go
net/swarm/swarm_test.go
+1
-1
peerstore.go
peer/peerstore.go
+2
-2
peerstore_test.go
peer/peerstore_test.go
+5
-5
dht.go
routing/dht/dht.go
+1
-1
records.go
routing/dht/records.go
+2
-2
没有找到文件。
core/commands/swarm.go
浏览文件 @
73a89e16
...
...
@@ -169,7 +169,7 @@ func peersWithAddresses(ps peer.Peerstore, addrs []string) ([]peer.Peer, error)
peers
:=
make
([]
peer
.
Peer
,
len
(
pids
))
for
i
,
pid
:=
range
pids
{
p
,
err
:=
ps
.
Get
(
pid
)
p
,
err
:=
ps
.
FindOrCreate
(
pid
)
if
err
!=
nil
{
return
nil
,
err
}
...
...
core/core.go
浏览文件 @
73a89e16
...
...
@@ -223,7 +223,7 @@ func initIdentity(cfg *config.Identity, peers peer.Peerstore, online bool) (peer
// get peer from peerstore (so it is constructed there)
id
:=
peer
.
ID
(
b58
.
Decode
(
cfg
.
PeerID
))
self
,
err
:=
peers
.
Get
(
id
)
self
,
err
:=
peers
.
FindOrCreate
(
id
)
if
err
!=
nil
{
return
nil
,
err
}
...
...
@@ -269,7 +269,7 @@ func initConnections(ctx context.Context, cfg *config.Config, pstore peer.Peerst
if
err
!=
nil
{
// return err
}
npeer
,
err
:=
pstore
.
Get
(
id
)
npeer
,
err
:=
pstore
.
FindOrCreate
(
id
)
if
err
!=
nil
{
log
.
Criticalf
(
"Bootstrapping error: %v"
,
err
)
continue
...
...
crypto/spipe/handshake.go
浏览文件 @
73a89e16
...
...
@@ -368,7 +368,7 @@ func getOrConstructPeer(peers peer.Peerstore, rpk ci.PubKey) (peer.Peer, error)
return
nil
,
err
}
npeer
,
err
:=
peers
.
Get
(
rid
)
npeer
,
err
:=
peers
.
FindOrCreate
(
rid
)
if
err
!=
nil
{
return
nil
,
err
// unexpected error happened.
}
...
...
net/swarm/swarm_test.go
浏览文件 @
73a89e16
...
...
@@ -84,7 +84,7 @@ func SubtestSwarm(t *testing.T, addrs []string, MsgNum int) {
connect
:=
func
(
s
*
Swarm
,
dst
peer
.
Peer
)
{
// copy for other peer
cp
,
err
:=
s
.
peers
.
Get
(
dst
.
ID
())
cp
,
err
:=
s
.
peers
.
FindOrCreate
(
dst
.
ID
())
if
err
!=
nil
{
t
.
Fatal
(
err
)
}
...
...
peer/peerstore.go
浏览文件 @
73a89e16
...
...
@@ -8,7 +8,7 @@ import (
// Peerstore provides a threadsafe collection for peers.
type
Peerstore
interface
{
Get
(
ID
)
(
Peer
,
error
)
FindOrCreate
(
ID
)
(
Peer
,
error
)
Add
(
Peer
)
(
Peer
,
error
)
Delete
(
ID
)
error
All
()
(
*
Map
,
error
)
...
...
@@ -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
()
defer
ps
.
Unlock
()
...
...
peer/peerstore_test.go
浏览文件 @
73a89e16
...
...
@@ -36,7 +36,7 @@ func TestPeerstore(t *testing.T) {
t
.
Error
(
"these should be the same"
)
}
p12
,
err
:=
ps
.
Get
(
ID
(
"11140beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a31"
))
p12
,
err
:=
ps
.
FindOrCreate
(
ID
(
"11140beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a31"
))
if
err
!=
nil
{
t
.
Error
(
err
)
}
...
...
@@ -53,7 +53,7 @@ func TestPeerstore(t *testing.T) {
t
.
Error
(
"These should be the same"
)
}
p22
,
err
:=
ps
.
Get
(
ID
(
"11140beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a32"
))
p22
,
err
:=
ps
.
FindOrCreate
(
ID
(
"11140beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a32"
))
if
err
!=
nil
{
t
.
Error
(
err
)
}
...
...
@@ -62,7 +62,7 @@ func TestPeerstore(t *testing.T) {
t
.
Error
(
errors
.
New
(
"peers should be the same"
))
}
_
,
err
=
ps
.
Get
(
ID
(
"11140beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a33"
))
_
,
err
=
ps
.
FindOrCreate
(
ID
(
"11140beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a33"
))
if
err
!=
nil
{
t
.
Error
(
errors
.
New
(
"should not have an error here"
))
}
...
...
@@ -73,12 +73,12 @@ func TestPeerstore(t *testing.T) {
}
// reconstruct!
_
,
err
=
ps
.
Get
(
ID
(
"11140beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a31"
))
_
,
err
=
ps
.
FindOrCreate
(
ID
(
"11140beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a31"
))
if
err
!=
nil
{
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
{
t
.
Error
(
err
)
}
...
...
routing/dht/dht.go
浏览文件 @
73a89e16
...
...
@@ -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
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
{
err
=
fmt
.
Errorf
(
"Failed to get peer from peerstore: %s"
,
err
)
log
.
Error
(
err
)
...
...
routing/dht/records.go
浏览文件 @
73a89e16
...
...
@@ -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
)
{
log
.
Debug
(
"getPublicKey for: %s"
,
pid
)
p
,
err
:=
dht
.
peerstore
.
Get
(
pid
)
p
,
err
:=
dht
.
peerstore
.
FindOrCreate
(
pid
)
if
err
==
nil
{
return
p
.
PubKey
(),
nil
}
...
...
@@ -67,7 +67,7 @@ func (dht *IpfsDHT) getPublicKey(pid peer.ID) (ci.PubKey, error) {
func
(
dht
*
IpfsDHT
)
verifyRecord
(
r
*
pb
.
Record
)
error
{
// 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
{
return
err
}
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论