@cryptotaxi247 / kubo / commits / d556ee23e

fix resolve command for the new cmds refactor

License: MIT Signed-off-by: Steven Allen <steven@stebalien.com>

Steven Allen committed Sep 19, 2018 at 14:43 UTC d556ee23efafe939ec3fb185d75d6e0172fde447
1 file changed +11 -20
core/commands/resolve.go
+11 -20
@@ -68,24 +68,21 @@ Resolve the value of an IPFS DAG path:
68 cmdkit.IntOption("dht-record-count", "dhtrc", "Number of records to request for DHT resolution."),
69 cmdkit.StringOption("dht-timeout", "dhtt", "Max time to collect values during DHT resolution eg \"30s\". Pass 0 for no timeout."),
70 },
71 - Run: func(req *cmds.Request, res cmds.ResponseEmitter, env cmds.Environment) {
71 + Run: func(req *cmds.Request, res cmds.ResponseEmitter, env cmds.Environment) error {
72 api, err := cmdenv.GetApi(env)
73 if err != nil {
74 - res.SetError(err, cmdkit.ErrNormal)
75 - return
74 + return err
75 }
76
77 n, err := cmdenv.GetNode(env)
78 if err != nil {
80 - res.SetError(err, cmdkit.ErrNormal)
81 - return
79 + return err
80 }
81
82 if !n.OnlineMode() {
83 err := n.SetupOfflineRouting()
84 if err != nil {
87 - res.SetError(err, cmdkit.ErrNormal)
88 - return
85 + return err
86 }
87 }
88
@@ -106,41 +103,35 @@ Resolve the value of an IPFS DAG path:
103 if dhttok {
104 d, err := time.ParseDuration(dhtt)
105 if err != nil {
109 - res.SetError(err, cmdkit.ErrNormal)
110 - return
106 + return err
107 }
108 if d < 0 {
113 - res.SetError(errors.New("DHT timeout value must be >= 0"), cmdkit.ErrNormal)
114 - return
109 + return errors.New("DHT timeout value must be >= 0")
110 }
111 ropts = append(ropts, options.Name.ResolveOption(nsopts.DhtTimeout(d)))
112 }
113 p, err := api.Name().Resolve(req.Context, name, ropts...)
114 // ErrResolveRecursion is fine
115 if err != nil && err != ns.ErrResolveRecursion {
121 - res.SetError(err, cmdkit.ErrNormal)
122 - return
116 + return err
117 }
124 - cmds.EmitOnce(res, &ncmd.ResolvedPath{Path: path.Path(p.String())})
125 - return
118 + return cmds.EmitOnce(res, &ncmd.ResolvedPath{Path: path.Path(p.String())})
119 }
120
121 // else, ipfs path or ipns with recursive flag
122 p, err := coreiface.ParsePath(name)
123 if err != nil {
131 - res.SetError(err, cmdkit.ErrNormal)
132 - return
124 + return err
125 }
126
127 rp, err := api.ResolvePath(req.Context, p)
128 if err != nil {
137 - res.SetError(err, cmdkit.ErrNormal)
138 - return
129 + return err
130 }
131
132 c := rp.Cid()
133
143 - cmds.EmitOnce(res, &ncmd.ResolvedPath{Path: path.FromCid(c)})
134 + return cmds.EmitOnce(res, &ncmd.ResolvedPath{Path: path.FromCid(c)})
135 },
136 Encoders: cmds.EncoderMap{
137 cmds.Text: cmds.MakeEncoder(func(req *cmds.Request, w io.Writer, v interface{}) error {