@@ -18,7 +18,6 @@ import (
18
18
dag "github.com/ipfs/go-ipfs/merkledag"
19
19
path "github.com/ipfs/go-ipfs/path"
20
20
"github.com/ipfs/go-ipfs/routing"
21
- ufs "github.com/ipfs/go-ipfs/unixfs"
22
21
uio "github.com/ipfs/go-ipfs/unixfs/io"
23
22
u "github.com/ipfs/go-ipfs/util"
24
23
)
@@ -70,14 +69,12 @@ func (i *gatewayHandler) loadTemplate() error {
70
69
71
70
// TODO(cryptix): find these helpers somewhere else
72
71
func (i * gatewayHandler ) newDagFromReader (r io.Reader ) (* dag.Node , error ) {
72
+ // TODO(cryptix): change and remove this helper once PR1136 is merged
73
+ // return ufs.AddFromReader(i.node, r.Body)
73
74
return importer .BuildDagFromReader (
74
75
r , i .node .DAG , i .node .Pinning .GetManual (), chunk .DefaultSplitter )
75
76
}
76
77
77
- func newDagEmptyDir () * dag.Node {
78
- return & dag.Node {Data : ufs .FolderPBData ()}
79
- }
80
-
81
78
// TODO(btc): break this apart into separate handlers using a more expressive muxer
82
79
func (i * gatewayHandler ) ServeHTTP (w http.ResponseWriter , r * http.Request ) {
83
80
if i .config .Writable {
@@ -242,7 +239,7 @@ func (i *gatewayHandler) postHandler(w http.ResponseWriter, r *http.Request) {
242
239
}
243
240
244
241
func (i * gatewayHandler ) putEmptyDirHandler (w http.ResponseWriter , r * http.Request ) {
245
- newnode := newDagEmptyDir ()
242
+ newnode := uio . NewDirectory ( i . node . DAG ). GetNode ()
246
243
247
244
key , err := i .node .DAG .Add (newnode )
248
245
if err != nil {
@@ -265,7 +262,7 @@ func (i *gatewayHandler) putHandler(w http.ResponseWriter, r *http.Request) {
265
262
266
263
var newnode * dag.Node
267
264
if pathext [len (pathext )- 1 ] == '/' {
268
- newnode = newDagEmptyDir ()
265
+ newnode = uio . NewDirectory ( i . node . DAG ). GetNode ()
269
266
} else {
270
267
newnode , err = i .newDagFromReader (r .Body )
271
268
if err != nil {
@@ -317,7 +314,7 @@ func (i *gatewayHandler) putHandler(w http.ResponseWriter, r *http.Request) {
317
314
if _ , ok := err .(path.ErrNoLink ); ok {
318
315
// Create empty directories, links will be made further down the code
319
316
for len (pathNodes ) < len (components ) {
320
- pathNodes = append (pathNodes , newDagEmptyDir ())
317
+ pathNodes = append (pathNodes , uio . NewDirectory ( i . node . DAG ). GetNode ())
321
318
}
322
319
} else if err != nil {
323
320
webError (w , "Could not resolve parent object" , err , http .StatusBadRequest )
0 commit comments