@cryptotaxi247 / kubo / commits / 6939b602d

coreapi: mirror unixfs file types

License: MIT Signed-off-by: Łukasz Magiera <magik6k@gmail.com>

Łukasz Magiera committed Feb 2, 2019 at 17:27 UTC 6939b602ddc03d0fab1b2d83da54fb2894df6f4d
3 files changed +18 -9
core/commands/ls.go
+3 -5
@@ -11,8 +11,6 @@ import (
11 iface "github.com/ipfs/go-ipfs/core/coreapi/interface"
12 options "github.com/ipfs/go-ipfs/core/coreapi/interface/options"
13
14 - unixfs "gx/ipfs/QmQ1JnYpnzkaurjW1yxkQxC2w3K1PorNE1nv1vaP5Le7sq/go-unixfs"
15 - unixfspb "gx/ipfs/QmQ1JnYpnzkaurjW1yxkQxC2w3K1PorNE1nv1vaP5Le7sq/go-unixfs/pb"
14 cmds "gx/ipfs/QmR77mMvvh8mJBBWQmBfQBu8oD38NUN4KE9SL2gDgAQNc6/go-ipfs-cmds"
15 cmdkit "gx/ipfs/Qmde5VP1qUkyQXKCfmEUA7bP64V2HAptbJ7phuPp7jXWwg/go-ipfs-cmdkit"
16 )
@@ -21,7 +19,7 @@ import (
19 type LsLink struct {
20 Name, Hash string
21 Size uint64
24 - Type unixfspb.Data_DataType
22 + Type iface.FileType
23 }
24
25 // LsObject is an element of LsOutput
@@ -232,9 +230,9 @@ func tabularOutput(req *cmds.Request, w io.Writer, out *LsOutput, lastObjectHash
230 s := "%[1]s\t%[3]s\n"
231
232 switch {
235 - case link.Type == unixfs.TDirectory && size:
233 + case link.Type == iface.TDirectory && size:
234 s = "%[1]s\t-\t%[3]s/\n"
237 - case link.Type == unixfs.TDirectory && !size:
235 + case link.Type == iface.TDirectory && !size:
236 s = "%[1]s\t%[3]s/\n"
237 case size:
238 s = "%s\t%v\t%s\n"
core/coreapi/interface/unixfs.go
+13 -2
@@ -4,7 +4,7 @@ import (
4 "context"
5 "github.com/ipfs/go-ipfs/core/coreapi/interface/options"
6
7 - "gx/ipfs/QmQ1JnYpnzkaurjW1yxkQxC2w3K1PorNE1nv1vaP5Le7sq/go-unixfs/pb"
7 + "gx/ipfs/QmQ1JnYpnzkaurjW1yxkQxC2w3K1PorNE1nv1vaP5Le7sq/go-unixfs"
8 ipld "gx/ipfs/QmRL22E4paat7ky7vx9MLpR97JHHbFPrg3ytFQw6qp1y1s/go-ipld-format"
9 "gx/ipfs/QmaXvvAVAQ5ABqM5xtjYmV85xmN5MkWAZsX9H9Fwo4FVXp/go-ipfs-files"
10 )
@@ -16,10 +16,21 @@ type AddEvent struct {
16 Size string `json:",omitempty"`
17 }
18
19 +type FileType int32
20 +
21 +const (
22 + TRaw = FileType(unixfs.TRaw)
23 + TFile = FileType(unixfs.TFile)
24 + TDirectory = FileType(unixfs.TDirectory)
25 + TMetadata = FileType(unixfs.TMetadata)
26 + TSymlink = FileType(unixfs.TSymlink)
27 + THAMTShard = FileType(unixfs.THAMTShard)
28 +)
29 +
30 type LsLink struct {
31 Link *ipld.Link
32 Size uint64
22 - Type unixfs_pb.Data_DataType
33 + Type FileType
34
35 Err error
36 }
core/coreapi/unixfs.go
+2 -2
@@ -182,7 +182,7 @@ func (api *UnixfsAPI) processLink(ctx context.Context, linkres ft.LinkResult, se
182 switch lnk.Link.Cid.Type() {
183 case cid.Raw:
184 // No need to check with raw leaves
185 - lnk.Type = ft.TFile
185 + lnk.Type = coreiface.TFile
186 lnk.Size = lnk.Link.Size
187 case cid.DagProtobuf:
188 if !settings.ResolveChildren {
@@ -201,7 +201,7 @@ func (api *UnixfsAPI) processLink(ctx context.Context, linkres ft.LinkResult, se
201 lnk.Err = err
202 break
203 }
204 - lnk.Type = d.Type()
204 + lnk.Type = coreiface.FileType(d.Type())
205 lnk.Size = d.FileSize()
206 }
207 }