github.com/Finschia/finschia-sdk@v0.48.1/x/token/codec.go (about)

     1  package token
     2  
     3  import (
     4  	"github.com/Finschia/finschia-sdk/codec"
     5  	"github.com/Finschia/finschia-sdk/codec/legacy"
     6  	"github.com/Finschia/finschia-sdk/codec/types"
     7  	cryptocodec "github.com/Finschia/finschia-sdk/crypto/codec"
     8  	sdk "github.com/Finschia/finschia-sdk/types"
     9  	"github.com/Finschia/finschia-sdk/types/msgservice"
    10  	authzcodec "github.com/Finschia/finschia-sdk/x/authz/codec"
    11  	fdncodec "github.com/Finschia/finschia-sdk/x/foundation/codec"
    12  	govcodec "github.com/Finschia/finschia-sdk/x/gov/codec"
    13  )
    14  
    15  // RegisterLegacyAminoCodec registers concrete types on the LegacyAmino codec
    16  func RegisterLegacyAminoCodec(cdc *codec.LegacyAmino) {
    17  	legacy.RegisterAminoMsg(cdc, &MsgSend{}, "lbm-sdk/MsgSend")
    18  	legacy.RegisterAminoMsg(cdc, &MsgOperatorSend{}, "lbm-sdk/MsgOperatorSend")
    19  	legacy.RegisterAminoMsg(cdc, &MsgRevokeOperator{}, "lbm-sdk/token/MsgRevokeOperator")       // Changed msgName due to conflict with `x/collection`
    20  	legacy.RegisterAminoMsg(cdc, &MsgAuthorizeOperator{}, "lbm-sdk/token/MsgAuthorizeOperator") // Changed msgName due to conflict with `x/collection`
    21  	legacy.RegisterAminoMsg(cdc, &MsgIssue{}, "lbm-sdk/MsgIssue")
    22  	legacy.RegisterAminoMsg(cdc, &MsgGrantPermission{}, "lbm-sdk/token/MsgGrantPermission")   // Changed msgName due to conflict with `x/collection`
    23  	legacy.RegisterAminoMsg(cdc, &MsgRevokePermission{}, "lbm-sdk/token/MsgRevokePermission") // Changed msgName due to conflict with `x/collection`
    24  	legacy.RegisterAminoMsg(cdc, &MsgMint{}, "lbm-sdk/MsgMint")
    25  	legacy.RegisterAminoMsg(cdc, &MsgBurn{}, "lbm-sdk/MsgBurn")
    26  	legacy.RegisterAminoMsg(cdc, &MsgOperatorBurn{}, "lbm-sdk/MsgOperatorBurn")
    27  	legacy.RegisterAminoMsg(cdc, &MsgModify{}, "lbm-sdk/token/MsgModify") // Changed msgName due to conflict with `x/collection`
    28  }
    29  
    30  func RegisterInterfaces(registry types.InterfaceRegistry) {
    31  	registry.RegisterImplementations((*sdk.Msg)(nil),
    32  		&MsgSend{},
    33  		&MsgRevokeOperator{},
    34  		&MsgIssue{},
    35  		&MsgMint{},
    36  		&MsgBurn{},
    37  		&MsgModify{},
    38  		&MsgOperatorSend{},
    39  		&MsgAuthorizeOperator{},
    40  		&MsgOperatorBurn{},
    41  		&MsgGrantPermission{},
    42  		&MsgRevokePermission{},
    43  	)
    44  
    45  	msgservice.RegisterMsgServiceDesc(registry, &_Msg_serviceDesc)
    46  }
    47  
    48  var (
    49  	amino     = codec.NewLegacyAmino()
    50  	ModuleCdc = codec.NewAminoCodec(amino)
    51  )
    52  
    53  func init() {
    54  	RegisterLegacyAminoCodec(amino)
    55  	cryptocodec.RegisterCrypto(amino)
    56  	sdk.RegisterLegacyAminoCodec(amino)
    57  
    58  	// Register all Amino interfaces and concrete types on the authz and gov Amino codec so that this can later be
    59  	// used to properly serialize MsgGrant, MsgExec and MsgSubmitProposal instances
    60  	RegisterLegacyAminoCodec(authzcodec.Amino)
    61  	RegisterLegacyAminoCodec(govcodec.Amino)
    62  	RegisterLegacyAminoCodec(fdncodec.Amino)
    63  }