mirror of
https://github.com/ipfs/kubo.git
synced 2025-06-29 17:36:38 +08:00
unixfs/io: added NewEmptyDirectory()
some golinting along the way
This commit is contained in:
@ -240,7 +240,7 @@ func (i *gatewayHandler) postHandler(w http.ResponseWriter, r *http.Request) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (i *gatewayHandler) putEmptyDirHandler(w http.ResponseWriter, r *http.Request) {
|
func (i *gatewayHandler) putEmptyDirHandler(w http.ResponseWriter, r *http.Request) {
|
||||||
newnode := uio.NewDirectory(i.node.DAG).GetNode()
|
newnode := uio.NewEmptyDirectory()
|
||||||
|
|
||||||
key, err := i.node.DAG.Add(newnode)
|
key, err := i.node.DAG.Add(newnode)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -266,7 +266,7 @@ func (i *gatewayHandler) putHandler(w http.ResponseWriter, r *http.Request) {
|
|||||||
|
|
||||||
var newnode *dag.Node
|
var newnode *dag.Node
|
||||||
if pathext[len(pathext)-1] == '/' {
|
if pathext[len(pathext)-1] == '/' {
|
||||||
newnode = uio.NewDirectory(i.node.DAG).GetNode()
|
newnode = uio.NewEmptyDirectory()
|
||||||
} else {
|
} else {
|
||||||
newnode, err = i.newDagFromReader(r.Body)
|
newnode, err = i.newDagFromReader(r.Body)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -15,15 +15,22 @@ type directoryBuilder struct {
|
|||||||
dirnode *mdag.Node
|
dirnode *mdag.Node
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewEmptyDirectory returns an empty merkledag Node with a folder Data chunk
|
||||||
|
func NewEmptyDirectory() *mdag.Node {
|
||||||
|
return &mdag.Node{Data: format.FolderPBData()}
|
||||||
|
}
|
||||||
|
|
||||||
|
// NewDirectory returns a directoryBuilder. It needs a DAGService to add the Children
|
||||||
func NewDirectory(dserv mdag.DAGService) *directoryBuilder {
|
func NewDirectory(dserv mdag.DAGService) *directoryBuilder {
|
||||||
db := new(directoryBuilder)
|
db := new(directoryBuilder)
|
||||||
db.dserv = dserv
|
db.dserv = dserv
|
||||||
db.dirnode = new(mdag.Node)
|
db.dirnode = NewEmptyDirectory()
|
||||||
db.dirnode.Data = format.FolderPBData()
|
|
||||||
return db
|
return db
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// AddChild adds a (name, key)-pair to the root node.
|
||||||
func (d *directoryBuilder) AddChild(name string, k u.Key) error {
|
func (d *directoryBuilder) AddChild(name string, k u.Key) error {
|
||||||
|
// TODO(cryptix): consolidate context managment
|
||||||
ctx, cancel := context.WithTimeout(context.TODO(), time.Minute)
|
ctx, cancel := context.WithTimeout(context.TODO(), time.Minute)
|
||||||
defer cancel()
|
defer cancel()
|
||||||
|
|
||||||
@ -40,6 +47,7 @@ func (d *directoryBuilder) AddChild(name string, k u.Key) error {
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetNode returns the root of this directoryBuilder
|
||||||
func (d *directoryBuilder) GetNode() *mdag.Node {
|
func (d *directoryBuilder) GetNode() *mdag.Node {
|
||||||
return d.dirnode
|
return d.dirnode
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user