github.com/fibonacci-chain/fbc@v0.0.0-20231124064014-c7636198c1e9/libs/ibc-go/testing/simapp/adapter/ica/module.go (about)

     1  package ica
     2  
     3  import (
     4  	"encoding/json"
     5  
     6  	"github.com/fibonacci-chain/fbc/libs/cosmos-sdk/codec"
     7  
     8  	"github.com/fibonacci-chain/fbc/libs/ibc-go/modules/apps/27-interchain-accounts/types"
     9  
    10  	sdk "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/types"
    11  	ica "github.com/fibonacci-chain/fbc/libs/ibc-go/modules/apps/27-interchain-accounts"
    12  	controllerkeeper "github.com/fibonacci-chain/fbc/libs/ibc-go/modules/apps/27-interchain-accounts/controller/keeper"
    13  	hostkeeper "github.com/fibonacci-chain/fbc/libs/ibc-go/modules/apps/27-interchain-accounts/host/keeper"
    14  	abci "github.com/fibonacci-chain/fbc/libs/tendermint/abci/types"
    15  )
    16  
    17  type TestICAModuleBaisc struct {
    18  	ica.AppModuleBasic
    19  }
    20  
    21  func (b TestICAModuleBaisc) DefaultGenesis() json.RawMessage {
    22  	return types.ModuleCdc.MustMarshalJSON(types.DefaultGenesis())
    23  }
    24  
    25  type TestICAModule struct {
    26  	ica.AppModule
    27  	ck *controllerkeeper.Keeper
    28  	hk *hostkeeper.Keeper
    29  }
    30  
    31  func NewTestICAModule(cdc *codec.CodecProxy, ck *controllerkeeper.Keeper, hk *hostkeeper.Keeper) *TestICAModule {
    32  	return &TestICAModule{
    33  		AppModule: ica.NewAppModule(cdc, ck, hk),
    34  		ck:        ck,
    35  		hk:        hk,
    36  	}
    37  }
    38  
    39  func (am TestICAModule) InitGenesis(s sdk.Context, message json.RawMessage) []abci.ValidatorUpdate {
    40  	var genesisState types.GenesisState
    41  	types.ModuleCdc.MustUnmarshalJSON(message, &genesisState)
    42  
    43  	if am.ck != nil {
    44  		controllerkeeper.InitGenesis(s, *am.ck, genesisState.ControllerGenesisState)
    45  	}
    46  
    47  	if am.hk != nil {
    48  		hostkeeper.InitGenesis(s, *am.hk, genesisState.HostGenesisState)
    49  	}
    50  
    51  	return nil
    52  }