add flag codec

This commit is contained in:
zgfzgf 2020-12-01 22:53:24 +08:00
parent a8cdb8adc7
commit 715c32ff77

View File

@ -30,6 +30,11 @@ var cidIdCmd = &cli.Command{
Value: "base64", Value: "base64",
Usage: "specify input encoding to parse", Usage: "specify input encoding to parse",
}, },
&cli.StringFlag{
Name: "codec",
Value: "abi",
Usage: "multicodec-packed content types: abi or raw",
},
}, },
Action: func(cctx *cli.Context) error { Action: func(cctx *cli.Context) error {
if !cctx.Args().Present() { if !cctx.Args().Present() {
@ -54,18 +59,24 @@ var cidIdCmd = &cli.Command{
return xerrors.Errorf("unrecognized encoding: %s", cctx.String("encoding")) return xerrors.Errorf("unrecognized encoding: %s", cctx.String("encoding"))
} }
builder := cid.V1Builder{Codec: cid.Raw, MhType: mh.IDENTITY} switch cctx.String("codec") {
rCid, err := builder.Sum(dec) case "abi":
if err != nil { aCid, err := abi.CidBuilder.Sum(dec)
return err if err != nil {
return xerrors.Errorf("cidBuilder abi: %w", err)
}
fmt.Println(aCid)
case "raw":
builder := cid.V1Builder{Codec: cid.Raw, MhType: mh.IDENTITY}
rCid, err := builder.Sum(dec)
if err != nil {
return xerrors.Errorf("cidBuilder raw: %w", err)
}
fmt.Println(rCid)
default:
return xerrors.Errorf("unrecognized codec: %s", cctx.String("codec"))
} }
fmt.Printf("Raw Cid:%s\n", rCid)
aCid, err := abi.CidBuilder.Sum(dec)
if err != nil {
return err
}
fmt.Printf("Abi Cid:%s\n", aCid)
return nil return nil
}, },
} }