cmds/pin: use EmitOnce for single value
License: MIT Signed-off-by: Overbool <overbool.xu@gmail.com>
Overbool committed
Nov 3, 2018 at 16:43 UTC
52cd246c0498da184f2c7cd240b33fc838c6666e
1 file changed
+15
-5
core/commands/pin.go
+15
-5
@@ -13,11 +13,11 @@ import (
13
corerepo "github.com/ipfs/go-ipfs/core/corerepo"
14
pin "github.com/ipfs/go-ipfs/pin"
15
16
- cmds "gx/ipfs/QmSXUokcP4TJpFfqozT69AVAYRtzXVMUjzQVkYX41R9Svs/go-ipfs-cmds"
16
offline "gx/ipfs/QmPpnbwgAuvhUkA9jGooR88ZwZtTUHXXvoQNKdjZC6nYku/go-ipfs-exchange-offline"
17
cid "gx/ipfs/QmR8BauakNcBa3RbE4nbQu76PDiJgoQgz8AJdhJuiU4TAw/go-cid"
18
bserv "gx/ipfs/QmVPeMNK9DfGLXDZzs2W4RoFWC9Zq1EnLGmLXtYtWrNdcW/go-blockservice"
19
"gx/ipfs/QmYMQuypUbgsdNHmuCBSUJV6wdQVsBHRivNAp3efHJwZJD/go-verifcid"
20
+ cmds "gx/ipfs/Qma6uuSyjkecGhMFFLfzyJDPyoDtNJSHJNweDccZhaWkgU/go-ipfs-cmds"
21
dag "gx/ipfs/QmaDBne4KeY3UepeqSVKYpSmQGa3q9zP6x3LfVF2UjF3Hc/go-merkledag"
22
"gx/ipfs/Qmde5VP1qUkyQXKCfmEUA7bP64V2HAptbJ7phuPp7jXWwg/go-ipfs-cmdkit"
23
)
@@ -65,6 +65,11 @@ var addPinCmd = &cmds.Command{
65
},
66
Type: AddPinOutput{},
67
Run: func(req *cmds.Request, res cmds.ResponseEmitter, env cmds.Environment) error {
68
+ err := req.ParseBodyArgs()
69
+ if err != nil {
70
+ return err
71
+ }
72
+
73
n, err := cmdenv.GetNode(env)
74
if err != nil {
75
return err
@@ -86,7 +91,7 @@ var addPinCmd = &cmds.Command{
91
if err != nil {
92
return err
93
}
89
- return res.Emit(&AddPinOutput{Pins: cidsToStrings(added)})
94
+ return cmds.EmitOnce(res, &AddPinOutput{Pins: cidsToStrings(added)})
95
}
96
97
out := make(chan interface{})
@@ -187,6 +192,11 @@ collected if needed. (By default, recursively. Use -r=false for direct pins.)
192
},
193
Type: PinOutput{},
194
Run: func(req *cmds.Request, res cmds.ResponseEmitter, env cmds.Environment) error {
195
+ err := req.ParseBodyArgs()
196
+ if err != nil {
197
+ return err
198
+ }
199
+
200
n, err := cmdenv.GetNode(env)
201
if err != nil {
202
return err
@@ -205,7 +215,7 @@ collected if needed. (By default, recursively. Use -r=false for direct pins.)
215
return err
216
}
217
208
- return res.Emit(&PinOutput{cidsToStrings(removed)})
218
+ return cmds.EmitOnce(res, &PinOutput{cidsToStrings(removed)})
219
},
220
Encoders: cmds.EncoderMap{
221
cmds.Text: cmds.MakeTypedEncoder(func(req *cmds.Request, w io.Writer, out *PinOutput) error {
@@ -308,7 +318,7 @@ Example:
318
return err
319
}
320
311
- return res.Emit(&RefKeyList{Keys: keys})
321
+ return cmds.EmitOnce(res, &RefKeyList{Keys: keys})
322
},
323
Type: RefKeyList{},
324
Encoders: cmds.EncoderMap{
@@ -373,7 +383,7 @@ new pin and removing the old one.
383
return err
384
}
385
376
- return res.Emit(&PinOutput{Pins: []string{from.String(), to.String()}})
386
+ return cmds.EmitOnce(res, &PinOutput{Pins: []string{from.String(), to.String()}})
387
},
388
Encoders: cmds.EncoderMap{
389
cmds.Text: cmds.MakeTypedEncoder(func(req *cmds.Request, w io.Writer, out *PinOutput) error {