Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
G
go-ipfs
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
jihao
go-ipfs
Commits
fda3d882
提交
fda3d882
authored
8月 12, 2018
作者:
Kevin Atkinson
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Rename prefix to CidBuilder in names when a cid.Builder is used.
License: MIT Signed-off-by:
Kevin Atkinson
<
k@kevina.org
>
上级
075ecb09
隐藏空白字符变更
内嵌
并排
正在显示
5 个修改的文件
包含
35 行增加
和
35 行删除
+35
-35
add.go
core/commands/add.go
+2
-2
files.go
core/commands/files.go
+10
-10
add.go
core/coreunix/add.go
+10
-10
dir.go
mfs/dir.go
+6
-6
ops.go
mfs/ops.go
+7
-7
没有找到文件。
core/commands/add.go
浏览文件 @
fda3d882
...
...
@@ -279,13 +279,13 @@ You can now check what blocks have been created by:
fileAdder
.
Silent
=
silent
fileAdder
.
RawLeaves
=
rawblks
fileAdder
.
NoCopy
=
nocopy
fileAdder
.
Prefix
=
&
prefix
fileAdder
.
CidBuilder
=
&
prefix
if
hash
{
md
:=
dagtest
.
Mock
()
emptyDirNode
:=
ft
.
EmptyDirNode
()
// Use the same prefix for the "empty" MFS root as for the file adder.
emptyDirNode
.
SetCidBuilder
(
fileAdder
.
Prefix
)
emptyDirNode
.
SetCidBuilder
(
fileAdder
.
CidBuilder
)
mr
,
err
:=
mfs
.
NewRoot
(
req
.
Context
,
md
,
emptyDirNode
,
nil
)
if
err
!=
nil
{
res
.
SetError
(
err
,
cmdkit
.
ErrNormal
)
...
...
core/commands/files.go
浏览文件 @
fda3d882
...
...
@@ -868,9 +868,9 @@ Examples:
root
:=
n
.
FilesRoot
err
=
mfs
.
Mkdir
(
root
,
dirtomake
,
mfs
.
MkdirOpts
{
Mkparents
:
dashp
,
Flush
:
flush
,
Prefix
:
prefix
,
Mkparents
:
dashp
,
Flush
:
flush
,
CidBuilder
:
prefix
,
})
if
err
!=
nil
{
res
.
SetError
(
err
,
cmdkit
.
ErrNormal
)
...
...
@@ -958,8 +958,8 @@ Change the cid version or hash function of the root node of a given path.
},
}
func
updatePath
(
rt
*
mfs
.
Root
,
pth
string
,
prefix
cid
.
Builder
,
flush
bool
)
error
{
if
prefix
==
nil
{
func
updatePath
(
rt
*
mfs
.
Root
,
pth
string
,
builder
cid
.
Builder
,
flush
bool
)
error
{
if
builder
==
nil
{
return
nil
}
...
...
@@ -970,7 +970,7 @@ func updatePath(rt *mfs.Root, pth string, prefix cid.Builder, flush bool) error
switch
n
:=
nd
.
(
type
)
{
case
*
mfs
.
Directory
:
n
.
Set
Prefix
(
prefix
)
n
.
Set
CidBuilder
(
builder
)
default
:
return
fmt
.
Errorf
(
"can only update directories"
)
}
...
...
@@ -1146,7 +1146,7 @@ func getPrefix(req oldcmds.Request) (cid.Builder, error) {
return
&
prefix
,
nil
}
func
getFileHandle
(
r
*
mfs
.
Root
,
path
string
,
create
bool
,
prefix
cid
.
Builder
)
(
*
mfs
.
File
,
error
)
{
func
getFileHandle
(
r
*
mfs
.
Root
,
path
string
,
create
bool
,
builder
cid
.
Builder
)
(
*
mfs
.
File
,
error
)
{
target
,
err
:=
mfs
.
Lookup
(
r
,
path
)
switch
err
{
case
nil
:
...
...
@@ -1172,12 +1172,12 @@ func getFileHandle(r *mfs.Root, path string, create bool, prefix cid.Builder) (*
if
!
ok
{
return
nil
,
fmt
.
Errorf
(
"%s was not a directory"
,
dirname
)
}
if
prefix
==
nil
{
prefix
=
pdir
.
GetPrefix
()
if
builder
==
nil
{
builder
=
pdir
.
GetCidBuilder
()
}
nd
:=
dag
.
NodeWithData
(
ft
.
FilePBData
(
nil
,
0
))
nd
.
SetCidBuilder
(
prefix
)
nd
.
SetCidBuilder
(
builder
)
err
=
pdir
.
AddChild
(
fname
,
nd
)
if
err
!=
nil
{
return
nil
,
err
...
...
core/coreunix/add.go
浏览文件 @
fda3d882
...
...
@@ -89,7 +89,7 @@ type Adder struct {
mroot
*
mfs
.
Root
unlocker
bstore
.
Unlocker
tempRoot
*
cid
.
Cid
Prefix
cid
.
Builder
CidBuilder
cid
.
Builder
liveNodes
uint64
}
...
...
@@ -98,7 +98,7 @@ func (adder *Adder) mfsRoot() (*mfs.Root, error) {
return
adder
.
mroot
,
nil
}
rnode
:=
unixfs
.
EmptyDirNode
()
rnode
.
SetCidBuilder
(
adder
.
Prefix
)
rnode
.
SetCidBuilder
(
adder
.
CidBuilder
)
mr
,
err
:=
mfs
.
NewRoot
(
adder
.
ctx
,
adder
.
dagService
,
rnode
,
nil
)
if
err
!=
nil
{
return
nil
,
err
...
...
@@ -124,7 +124,7 @@ func (adder *Adder) add(reader io.Reader) (ipld.Node, error) {
RawLeaves
:
adder
.
RawLeaves
,
Maxlinks
:
ihelper
.
DefaultLinksPerBlock
,
NoCopy
:
adder
.
NoCopy
,
CidBuilder
:
adder
.
Prefix
,
CidBuilder
:
adder
.
CidBuilder
,
}
if
adder
.
Trickle
{
...
...
@@ -384,9 +384,9 @@ func (adder *Adder) addNode(node ipld.Node, path string) error {
dir
:=
gopath
.
Dir
(
path
)
if
dir
!=
"."
{
opts
:=
mfs
.
MkdirOpts
{
Mkparents
:
true
,
Flush
:
false
,
Prefix
:
adder
.
Prefix
,
Mkparents
:
true
,
Flush
:
false
,
CidBuilder
:
adder
.
CidBuilder
,
}
if
err
:=
mfs
.
Mkdir
(
mr
,
dir
,
opts
);
err
!=
nil
{
return
err
...
...
@@ -449,7 +449,7 @@ func (adder *Adder) addFile(file files.File) error {
}
dagnode
:=
dag
.
NodeWithData
(
sdata
)
dagnode
.
SetCidBuilder
(
adder
.
Prefix
)
dagnode
.
SetCidBuilder
(
adder
.
CidBuilder
)
err
=
adder
.
dagService
.
Add
(
adder
.
ctx
,
dagnode
)
if
err
!=
nil
{
return
err
...
...
@@ -488,9 +488,9 @@ func (adder *Adder) addDir(dir files.File) error {
return
err
}
err
=
mfs
.
Mkdir
(
mr
,
dir
.
FileName
(),
mfs
.
MkdirOpts
{
Mkparents
:
true
,
Flush
:
false
,
Prefix
:
adder
.
Prefix
,
Mkparents
:
true
,
Flush
:
false
,
CidBuilder
:
adder
.
CidBuilder
,
})
if
err
!=
nil
{
return
err
...
...
mfs/dir.go
浏览文件 @
fda3d882
...
...
@@ -63,14 +63,14 @@ func NewDirectory(ctx context.Context, name string, node ipld.Node, parent child
},
nil
}
// Get
Prefix gets the CID prefix
of the root node
func
(
d
*
Directory
)
Get
Prefix
()
cid
.
Builder
{
// Get
CidBuilder gets the CID builder
of the root node
func
(
d
*
Directory
)
Get
CidBuilder
()
cid
.
Builder
{
return
d
.
unixfsDir
.
GetCidBuilder
()
}
// Set
Prefix sets the CID prefix
func
(
d
*
Directory
)
Set
Prefix
(
prefix
cid
.
Builder
)
{
d
.
unixfsDir
.
SetCidBuilder
(
prefix
)
// Set
CidBuilder sets the CID builder
func
(
d
*
Directory
)
Set
CidBuilder
(
b
cid
.
Builder
)
{
d
.
unixfsDir
.
SetCidBuilder
(
b
)
}
// closeChild updates the child by the given name to the dag node 'nd'
...
...
@@ -307,7 +307,7 @@ func (d *Directory) Mkdir(name string) (*Directory, error) {
}
ndir
:=
ft
.
EmptyDirNode
()
ndir
.
SetCidBuilder
(
d
.
Get
Prefix
())
ndir
.
SetCidBuilder
(
d
.
Get
CidBuilder
())
err
=
d
.
dserv
.
Add
(
d
.
ctx
,
ndir
)
if
err
!=
nil
{
...
...
mfs/ops.go
浏览文件 @
fda3d882
...
...
@@ -99,9 +99,9 @@ func PutNode(r *Root, path string, nd ipld.Node) error {
// MkdirOpts is used by Mkdir
type
MkdirOpts
struct
{
Mkparents
bool
Flush
bool
Prefix
cid
.
Builder
Mkparents
bool
Flush
bool
CidBuilder
cid
.
Builder
}
// Mkdir creates a directory at 'path' under the directory 'd', creating
...
...
@@ -136,8 +136,8 @@ func Mkdir(r *Root, pth string, opts MkdirOpts) error {
if
err
!=
nil
{
return
err
}
if
opts
.
Prefix
!=
nil
{
mkd
.
Set
Prefix
(
opts
.
Prefix
)
if
opts
.
CidBuilder
!=
nil
{
mkd
.
Set
CidBuilder
(
opts
.
CidBuilder
)
}
fsn
=
mkd
}
else
if
err
!=
nil
{
...
...
@@ -157,8 +157,8 @@ func Mkdir(r *Root, pth string, opts MkdirOpts) error {
return
err
}
}
if
opts
.
Prefix
!=
nil
{
final
.
Set
Prefix
(
opts
.
Prefix
)
if
opts
.
CidBuilder
!=
nil
{
final
.
Set
CidBuilder
(
opts
.
CidBuilder
)
}
if
opts
.
Flush
{
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论