core/coreunixs/add: Change add() to only accept a single reader
Catch up with core/commands/add.go.
W. Trevor King committed
Apr 23, 2015 at 12:43 UTC
641c20b9ddf24adb6733d52b4a21f0ef51f1c827
1 file changed
+11
-12
core/coreunix/add.go
+11
-12
@@ -86,24 +86,23 @@ func AddWrapped(n *core.IpfsNode, r io.Reader, filename string) (string, *merkle
86
return gopath.Join(k.String(), filename), dagnode, nil
87
}
88
89
-func add(n *core.IpfsNode, readers []io.Reader) ([]*merkledag.Node, error) {
89
+func add(n *core.IpfsNode, reader io.Reader) (*merkledag.Node, error) {
90
mp, ok := n.Pinning.(pin.ManualPinner)
91
if !ok {
92
return nil, errors.New("invalid pinner type! expected manual pinner")
93
}
94
- dagnodes := make([]*merkledag.Node, 0)
95
- for _, reader := range readers {
96
- node, err := importer.BuildDagFromReader(reader, n.DAG, mp, chunk.DefaultSplitter)
97
- if err != nil {
98
- return nil, err
99
- }
100
- dagnodes = append(dagnodes, node)
94
+
95
+ node, err := importer.BuildDagFromReader(reader, n.DAG, mp, chunk.DefaultSplitter)
96
+ if err != nil {
97
+ return nil, err
98
}
102
- err := n.Pinning.Flush()
99
+
100
+ err = n.Pinning.Flush()
101
if err != nil {
102
return nil, err
103
}
106
- return dagnodes, nil
104
+
105
+ return node, nil
106
}
107
108
func addNode(n *core.IpfsNode, node *merkledag.Node) error {
@@ -125,12 +124,12 @@ func addFile(n *core.IpfsNode, file files.File) (*merkledag.Node, error) {
124
return addDir(n, file)
125
}
126
128
- dns, err := add(n, []io.Reader{file})
127
+ dagnode, err := add(n, file)
128
if err != nil {
129
return nil, err
130
}
131
133
- return dns[len(dns)-1], nil // last dag node is the file.
132
+ return dagnode, nil
133
}
134
135
func addDir(n *core.IpfsNode, dir files.File) (*merkledag.Node, error) {