@cryptotaxi247 / kubo / commits / 9611d5f31

refactor(cmds): replace MakeEncoder with MakeTypedEncoder

License: MIT Signed-off-by: Overbool <overbool.xu@gmail.com>

Overbool committed Oct 26, 2018 at 18:02 UTC 9611d5f310789c90caef955bcb486aff3e4d6a83
1 file changed +7 -13
core/commands/id.go
+7 -13
@@ -10,7 +10,6 @@ import (
10
11 core "github.com/ipfs/go-ipfs/core"
12 cmdenv "github.com/ipfs/go-ipfs/core/commands/cmdenv"
13 - e "github.com/ipfs/go-ipfs/core/commands/e"
13
14 ic "gx/ipfs/QmPvyPwuCgJ7pDmrKDxRtsScJgBaM5h4EpRL2qQJsmXf4n/go-libp2p-crypto"
15 "gx/ipfs/QmTRhk7cgjUf2gfQ3p2M9KPECNZEW9XUrmHcFCgog4cPgB/go-libp2p-peer"
@@ -112,25 +111,20 @@ EXAMPLE:
111 return cmds.EmitOnce(res, output)
112 },
113 Encoders: cmds.EncoderMap{
115 - cmds.Text: cmds.MakeEncoder(func(req *cmds.Request, w io.Writer, v interface{}) error {
116 - val, ok := v.(*IdOutput)
117 - if !ok {
118 - return e.TypeErr(val, v)
119 - }
120 -
114 + cmds.Text: cmds.MakeTypedEncoder(func(req *cmds.Request, w io.Writer, out *IdOutput) error {
115 format, found := req.Options[formatOptionName].(string)
116 if found {
117 output := format
124 - output = strings.Replace(output, "<id>", val.ID, -1)
125 - output = strings.Replace(output, "<aver>", val.AgentVersion, -1)
126 - output = strings.Replace(output, "<pver>", val.ProtocolVersion, -1)
127 - output = strings.Replace(output, "<pubkey>", val.PublicKey, -1)
128 - output = strings.Replace(output, "<addrs>", strings.Join(val.Addresses, "\n"), -1)
118 + output = strings.Replace(output, "<id>", out.ID, -1)
119 + output = strings.Replace(output, "<aver>", out.AgentVersion, -1)
120 + output = strings.Replace(output, "<pver>", out.ProtocolVersion, -1)
121 + output = strings.Replace(output, "<pubkey>", out.PublicKey, -1)
122 + output = strings.Replace(output, "<addrs>", strings.Join(out.Addresses, "\n"), -1)
123 output = strings.Replace(output, "\\n", "\n", -1)
124 output = strings.Replace(output, "\\t", "\t", -1)
125 fmt.Fprint(w, output)
126 } else {
133 - marshaled, err := json.MarshalIndent(val, "", "\t")
127 + marshaled, err := json.MarshalIndent(out, "", "\t")
128 if err != nil {
129 return err
130 }