From 4b278856d2db48dd3221388dc62f788adeaef669 Mon Sep 17 00:00:00 2001 From: Jeromy Date: Fri, 19 Aug 2016 17:01:15 -0700 Subject: [PATCH] ipfs/add: make --local flag not write out providers License: MIT Signed-off-by: Jeromy --- core/commands/add.go | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/core/commands/add.go b/core/commands/add.go index 3a95f91db..a5bf084d3 100644 --- a/core/commands/add.go +++ b/core/commands/add.go @@ -7,9 +7,12 @@ import ( "github.com/ipfs/go-ipfs/core/coreunix" "gx/ipfs/QmeWjRodbcZFKe5tMN7poEx3izym6osrLSnTLf9UjJZBbs/pb" + blockservice "github.com/ipfs/go-ipfs/blockservice" cmds "github.com/ipfs/go-ipfs/commands" files "github.com/ipfs/go-ipfs/commands/files" core "github.com/ipfs/go-ipfs/core" + offline "github.com/ipfs/go-ipfs/exchange/offline" + dag "github.com/ipfs/go-ipfs/merkledag" dagtest "github.com/ipfs/go-ipfs/merkledag/test" mfs "github.com/ipfs/go-ipfs/mfs" ft "github.com/ipfs/go-ipfs/unixfs" @@ -146,10 +149,18 @@ You can now refer to the added file in a gateway, like so: n = nilnode } + dserv := n.DAG + local, _, _ := req.Option("local").Bool() + if local { + offlineexch := offline.Exchange(n.Blockstore) + bserv := blockservice.New(n.Blockstore, offlineexch) + dserv = dag.NewDAGService(bserv) + } + outChan := make(chan interface{}, 8) res.SetOutput((<-chan interface{})(outChan)) - fileAdder, err := coreunix.NewAdder(req.Context(), n.Pinning, n.Blockstore, n.DAG) + fileAdder, err := coreunix.NewAdder(req.Context(), n.Pinning, n.Blockstore, dserv) if err != nil { res.SetError(err, cmds.ErrNormal) return