2018-06-28 17:54:47 -07:00
|
|
|
package keys
|
|
|
|
|
|
|
|
import (
|
2019-03-01 13:29:33 -08:00
|
|
|
cryptoAmino "github.com/tendermint/tendermint/crypto/encoding/amino"
|
|
|
|
|
2019-06-05 16:26:17 -07:00
|
|
|
"github.com/cosmos/cosmos-sdk/codec"
|
2019-02-11 09:02:47 -08:00
|
|
|
"github.com/cosmos/cosmos-sdk/crypto/keys/hd"
|
2018-06-28 17:54:47 -07:00
|
|
|
)
|
|
|
|
|
2019-12-12 13:52:24 -08:00
|
|
|
// CryptoCdc defines the codec required for keys and info
|
|
|
|
var CryptoCdc *codec.Codec
|
2018-06-28 17:54:47 -07:00
|
|
|
|
|
|
|
func init() {
|
2019-12-12 13:52:24 -08:00
|
|
|
CryptoCdc = codec.New()
|
|
|
|
cryptoAmino.RegisterAmino(CryptoCdc)
|
|
|
|
RegisterCodec(CryptoCdc)
|
|
|
|
CryptoCdc.Seal()
|
|
|
|
}
|
|
|
|
|
|
|
|
// RegisterCodec registers concrete types and interfaces on the given codec.
|
|
|
|
func RegisterCodec(cdc *codec.Codec) {
|
2018-06-28 17:54:47 -07:00
|
|
|
cdc.RegisterInterface((*Info)(nil), nil)
|
2019-02-11 09:02:47 -08:00
|
|
|
cdc.RegisterConcrete(hd.BIP44Params{}, "crypto/keys/hd/BIP44Params", nil)
|
2018-06-28 17:54:47 -07:00
|
|
|
cdc.RegisterConcrete(localInfo{}, "crypto/keys/localInfo", nil)
|
|
|
|
cdc.RegisterConcrete(ledgerInfo{}, "crypto/keys/ledgerInfo", nil)
|
|
|
|
cdc.RegisterConcrete(offlineInfo{}, "crypto/keys/offlineInfo", nil)
|
2019-03-01 13:29:33 -08:00
|
|
|
cdc.RegisterConcrete(multiInfo{}, "crypto/keys/multiInfo", nil)
|
2018-06-28 17:54:47 -07:00
|
|
|
}
|