github.com/fibonacci-chain/fbc@v0.0.0-20231124064014-c7636198c1e9/x/wasm/types/codec.go (about)

     1  package types
     2  
     3  import (
     4  	"github.com/fibonacci-chain/fbc/libs/cosmos-sdk/codec"
     5  	cryptocodec "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/codec"
     6  	"github.com/fibonacci-chain/fbc/libs/cosmos-sdk/codec/types"
     7  	sdk "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/types"
     8  	txmsg "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/types/ibc-adapter"
     9  	"github.com/fibonacci-chain/fbc/libs/cosmos-sdk/types/msgservice"
    10  	govtypes "github.com/fibonacci-chain/fbc/x/gov/types"
    11  )
    12  
    13  // RegisterLegacyAminoCodec registers the account types and interface
    14  func RegisterLegacyAminoCodec(cdc *codec.Codec) { //nolint:staticcheck
    15  	cdc.RegisterConcrete(&MsgStoreCode{}, "wasm/MsgStoreCode", nil)
    16  	cdc.RegisterConcrete(&MsgInstantiateContract{}, "wasm/MsgInstantiateContract", nil)
    17  	cdc.RegisterConcrete(&MsgExecuteContract{}, "wasm/MsgExecuteContract", nil)
    18  	cdc.RegisterConcrete(&MsgMigrateContract{}, "wasm/MsgMigrateContract", nil)
    19  	cdc.RegisterConcrete(&MsgUpdateAdmin{}, "wasm/MsgUpdateAdmin", nil)
    20  	cdc.RegisterConcrete(&MsgClearAdmin{}, "wasm/MsgClearAdmin", nil)
    21  
    22  	cdc.RegisterConcrete(&PinCodesProposal{}, "wasm/PinCodesProposal", nil)
    23  	cdc.RegisterConcrete(&UnpinCodesProposal{}, "wasm/UnpinCodesProposal", nil)
    24  	cdc.RegisterConcrete(&StoreCodeProposal{}, "wasm/StoreCodeProposal", nil)
    25  	cdc.RegisterConcrete(&InstantiateContractProposal{}, "wasm/InstantiateContractProposal", nil)
    26  	cdc.RegisterConcrete(&MigrateContractProposal{}, "wasm/MigrateContractProposal", nil)
    27  	cdc.RegisterConcrete(&SudoContractProposal{}, "wasm/SudoContractProposal", nil)
    28  	cdc.RegisterConcrete(&ExecuteContractProposal{}, "wasm/ExecuteContractProposal", nil)
    29  	cdc.RegisterConcrete(&UpdateAdminProposal{}, "wasm/UpdateAdminProposal", nil)
    30  	cdc.RegisterConcrete(&ClearAdminProposal{}, "wasm/ClearAdminProposal", nil)
    31  	cdc.RegisterConcrete(&UpdateInstantiateConfigProposal{}, "wasm/UpdateInstantiateConfigProposal", nil)
    32  	cdc.RegisterConcrete(&UpdateDeploymentWhitelistProposal{}, "wasm/UpdateDeploymentWhitelistProposal", nil)
    33  	cdc.RegisterConcrete(&UpdateWASMContractMethodBlockedListProposal{}, "wasm/UpdateWASMContractMethodBlockedListProposal", nil)
    34  }
    35  
    36  func RegisterInterfaces(registry types.InterfaceRegistry) {
    37  	registry.RegisterImplementations(
    38  		(*sdk.Msg)(nil),
    39  		&MsgStoreCode{},
    40  		&MsgInstantiateContract{},
    41  		&MsgExecuteContract{},
    42  		&MsgMigrateContract{},
    43  		&MsgUpdateAdmin{},
    44  		&MsgClearAdmin{},
    45  		&MsgIBCCloseChannel{},
    46  		&MsgIBCSend{},
    47  	)
    48  	registry.RegisterImplementations((*txmsg.Msg)(nil),
    49  		&MsgStoreCode{},
    50  		&MsgInstantiateContract{},
    51  		&MsgExecuteContract{},
    52  		&MsgMigrateContract{},
    53  		&MsgUpdateAdmin{},
    54  		&MsgClearAdmin{},
    55  		&MsgIBCCloseChannel{},
    56  		&MsgIBCSend{},
    57  	)
    58  	registry.RegisterImplementations(
    59  		(*govtypes.Content)(nil),
    60  		&StoreCodeProposal{},
    61  		&InstantiateContractProposal{},
    62  		&MigrateContractProposal{},
    63  		&SudoContractProposal{},
    64  		&ExecuteContractProposal{},
    65  		&UpdateAdminProposal{},
    66  		&ClearAdminProposal{},
    67  		&PinCodesProposal{},
    68  		&UnpinCodesProposal{},
    69  		&UpdateInstantiateConfigProposal{},
    70  		&UpdateDeploymentWhitelistProposal{},
    71  		&UpdateWASMContractMethodBlockedListProposal{},
    72  	)
    73  
    74  	registry.RegisterInterface("ContractInfoExtension", (*ContractInfoExtension)(nil))
    75  
    76  	msgservice.RegisterMsgServiceDesc(registry, &_Msg_serviceDesc)
    77  }
    78  
    79  var (
    80  	ModuleCdc = codec.New()
    81  )
    82  
    83  func init() {
    84  	RegisterLegacyAminoCodec(ModuleCdc)
    85  	cryptocodec.RegisterCrypto(ModuleCdc)
    86  }