diff --git a/core/coreunix/add.go b/core/coreunix/add.go index 9fb12189cf4..18b8aa6c9b9 100644 --- a/core/coreunix/add.go +++ b/core/coreunix/add.go @@ -89,7 +89,7 @@ func NewAdder(ctx context.Context, p pin.Pinner, bs bstore.GCBlockstore, ds dag. } -// Internal structure for holding the switches passed to the `add` call +// Adder holds the switches passed to the `add` command. type Adder struct { ctx context.Context pinning pin.Pinner @@ -114,7 +114,7 @@ func (adder *Adder) SetMfsRoot(r *mfs.Root) { adder.mr = r } -// Perform the actual add & pin locally, outputting results to reader +// Constructs a node from reader's data, and adds it. Doesn't pin. func (adder Adder) add(reader io.Reader) (node.Node, error) { chnk, err := chunk.FromString(reader, adder.Chunker) if err != nil { @@ -251,12 +251,14 @@ func (adder *Adder) outputDirs(path string, fsn mfs.FSNode) error { } } -// Add builds a merkledag from the a reader, pinning all objects to the local -// datastore. Returns a key representing the root node. +// Add builds a merkledag node from a reader, adds it to the blockstore, +// and returns the key representing that node. +// If you want to pin it, use NewAdder() and Adder.PinRoot(). func Add(n *core.IpfsNode, r io.Reader) (string, error) { return AddWithContext(n.Context(), n, r) } +// AddWithContext does the same as Add, but with a custom context. func AddWithContext(ctx context.Context, n *core.IpfsNode, r io.Reader) (string, error) { defer n.Blockstore.PinLock().Unlock() @@ -357,7 +359,7 @@ func (adder *Adder) addNode(node node.Node, path string) error { return nil } -// Add the given file while respecting the adder. +// AddFile adds the given file while respecting the adder. func (adder *Adder) AddFile(file files.File) error { if adder.Pin { adder.unlocker = adder.blockstore.PinLock()