Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
G
go-ipfs
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
jihao
go-ipfs
Commits
b8bc26a7
提交
b8bc26a7
authored
3月 04, 2019
作者:
Łukasz Magiera
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
WIP almost working ipfs add
License: MIT Signed-off-by:
Łukasz Magiera
<
magik6k@gmail.com
>
上级
2e8bb8c0
隐藏空白字符变更
内嵌
并排
正在显示
3 个修改的文件
包含
24 行增加
和
3 行删除
+24
-3
add.go
core/commands/add.go
+18
-2
unixfs.go
core/coreapi/unixfs.go
+1
-0
add.go
core/coreunix/add.go
+5
-1
没有找到文件。
core/commands/add.go
浏览文件 @
b8bc26a7
...
...
@@ -185,6 +185,22 @@ You can now check what blocks have been created by:
events
:=
make
(
chan
interface
{},
adderOutChanSize
)
var
toadd
files
.
Node
=
req
.
Files
addName
:=
""
if
!
wrap
{
it
:=
req
.
Files
.
Entries
()
if
!
it
.
Next
()
{
err
:=
it
.
Err
()
if
err
==
nil
{
return
fmt
.
Errorf
(
"expected a file argument"
)
}
return
err
}
addName
=
it
.
Name
()
toadd
=
it
.
Node
()
}
opts
:=
[]
options
.
UnixfsAddOption
{
options
.
Unixfs
.
Hash
(
hashFunCode
),
...
...
@@ -198,13 +214,13 @@ You can now check what blocks have been created by:
options
.
Unixfs
.
FsCache
(
fscache
),
options
.
Unixfs
.
Nocopy
(
nocopy
),
options
.
Unixfs
.
Wrap
(
wrap
),
options
.
Unixfs
.
Hidden
(
hidden
),
options
.
Unixfs
.
StdinName
(
pathName
),
options
.
Unixfs
.
Progress
(
progress
),
options
.
Unixfs
.
Silent
(
silent
),
options
.
Unixfs
.
Events
(
events
),
options
.
Unixfs
.
BaseName
(
addName
),
}
if
cidVerSet
{
...
...
@@ -224,7 +240,7 @@ You can now check what blocks have been created by:
var
err
error
defer
func
()
{
errCh
<-
err
}()
defer
close
(
events
)
_
,
err
=
api
.
Unixfs
()
.
Add
(
req
.
Context
,
req
.
Files
,
opts
...
)
_
,
err
=
api
.
Unixfs
()
.
Add
(
req
.
Context
,
toadd
,
opts
...
)
}()
for
event
:=
range
events
{
...
...
core/coreapi/unixfs.go
浏览文件 @
b8bc26a7
...
...
@@ -94,6 +94,7 @@ func (api *UnixfsAPI) Add(ctx context.Context, files files.Node, opts ...options
fileAdder
.
RawLeaves
=
settings
.
RawLeaves
fileAdder
.
NoCopy
=
settings
.
NoCopy
fileAdder
.
Name
=
settings
.
StdinName
fileAdder
.
BaseName
=
settings
.
BaseName
fileAdder
.
CidBuilder
=
prefix
fileAdder
.
TopHidden
=
settings
.
TopHidden
...
...
core/coreunix/add.go
浏览文件 @
b8bc26a7
...
...
@@ -75,6 +75,7 @@ type Adder struct {
Silent
bool
Wrap
bool
Name
string
BaseName
string
NoCopy
bool
Chunker
string
root
ipld
.
Node
...
...
@@ -230,6 +231,9 @@ func (adder *Adder) outputDirs(path string, fsn mfs.FSNode) error {
func
(
adder
*
Adder
)
addNode
(
node
ipld
.
Node
,
path
string
)
error
{
// patch it into the root
if
adder
.
BaseName
!=
""
{
path
=
gopath
.
Join
(
adder
.
BaseName
,
path
)
}
if
path
==
""
{
path
=
node
.
Cid
()
.
String
()
}
...
...
@@ -351,7 +355,7 @@ func (adder *Adder) AddAllAndPin(file files.Node) (ipld.Node, error) {
return
nil
,
err
}
if
err
:=
outputDagnode
(
adder
.
Out
,
""
,
nd
);
err
!=
nil
{
if
err
:=
outputDagnode
(
adder
.
Out
,
adder
.
BaseName
,
nd
);
err
!=
nil
{
return
nil
,
err
}
}
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论