feat(core): expose IpfsNode.Resolve
Brian Tiger Chow committed
Jan 10, 2015 at 23:17 UTC
033e33dadf6ab0aca22e7bbd370598a5ac4b167d
2 files changed
+7
-4
core/core.go
+5
@@ -29,6 +29,7 @@ import (
29
pin "github.com/jbenet/go-ipfs/pin"
30
routing "github.com/jbenet/go-ipfs/routing"
31
dht "github.com/jbenet/go-ipfs/routing/dht"
32
+ util "github.com/jbenet/go-ipfs/util"
33
ds2 "github.com/jbenet/go-ipfs/util/datastore2"
34
debugerror "github.com/jbenet/go-ipfs/util/debugerror"
35
eventlog "github.com/jbenet/go-ipfs/util/eventlog"
@@ -264,6 +265,10 @@ func (n *IpfsNode) OnlineMode() bool {
265
}
266
}
267
268
+func (n *IpfsNode) Resolve(k util.Key) (*merkledag.Node, error) {
269
+ return (&path.Resolver{n.DAG}).ResolvePath(k.String())
270
+}
271
+
272
func (n *IpfsNode) Bootstrap(ctx context.Context, peers []peer.PeerInfo) error {
273
if n.DHT != nil {
274
for _, p := range peers {
core/io/cat.go
+2
-4
@@ -15,16 +15,14 @@ import (
15
"io"
16
17
core "github.com/jbenet/go-ipfs/core"
18
- path "github.com/jbenet/go-ipfs/path"
18
uio "github.com/jbenet/go-ipfs/unixfs/io"
19
u "github.com/jbenet/go-ipfs/util"
20
)
21
22
func Cat(n *core.IpfsNode, k u.Key) (io.Reader, error) {
24
- dag := n.DAG
25
- dagNode, err := (&path.Resolver{dag}).ResolvePath(k.String())
23
+ dagNode, err := n.Resolve(k)
24
if err != nil {
25
return nil, err
26
}
29
- return uio.NewDagReader(dagNode, dag)
27
+ return uio.NewDagReader(dagNode, n.DAG)
28
}