@cryptotaxi247 / kubo / commits / c89e3c22e

core/commands/pin: refactor 'pin ls'

License: MIT Signed-off-by: Christian Couder <chriscool@tuxfamily.org>

Christian Couder committed Jan 12, 2016 at 21:54 UTC c89e3c22ebb54ad26e3f93d94fe084aa0b7c0edc
1 file changed +10 -14
core/commands/pin.go
+10 -14
@@ -212,13 +212,18 @@ Example:
212 }
213
214 keys := make(map[string]RefKeyObject)
215 - if typeStr == "direct" || typeStr == "all" {
216 - for _, k := range n.Pinning.DirectKeys() {
215 +
216 + AddToResultKeys := func(keyList []key.Key, typeStr string) {
217 + for _, k := range keyList {
218 keys[k.B58String()] = RefKeyObject{
218 - Type: "direct",
219 + Type: typeStr,
220 }
221 }
222 }
223 +
224 + if typeStr == "direct" || typeStr == "all" {
225 + AddToResultKeys(n.Pinning.DirectKeys(), "direct")
226 + }
227 if typeStr == "indirect" || typeStr == "all" {
228 ks := key.NewKeySet()
229 for _, k := range n.Pinning.RecursiveKeys() {
@@ -232,20 +237,11 @@ Example:
237 res.SetError(err, cmds.ErrNormal)
238 return
239 }
235 -
236 - }
237 - for _, k := range ks.Keys() {
238 - keys[k.B58String()] = RefKeyObject{
239 - Type: "indirect",
240 - }
240 }
241 + AddToResultKeys(ks.Keys(), "indirect")
242 }
243 if typeStr == "recursive" || typeStr == "all" {
244 - for _, k := range n.Pinning.RecursiveKeys() {
245 - keys[k.B58String()] = RefKeyObject{
246 - Type: "recursive",
247 - }
248 - }
244 + AddToResultKeys(n.Pinning.RecursiveKeys(), "recursive")
245 }
246
247 res.SetOutput(&RefKeyList{Keys: keys})