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

     1  package capability
     2  
     3  import (
     4  	"encoding/json"
     5  
     6  	"github.com/fibonacci-chain/fbc/libs/cosmos-sdk/codec"
     7  	sdk "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/types"
     8  	capabilityModule "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/x/capability"
     9  	"github.com/fibonacci-chain/fbc/libs/cosmos-sdk/x/capability/keeper"
    10  	types2 "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/x/capability/types"
    11  	"github.com/fibonacci-chain/fbc/libs/ibc-go/testing/simapp/adapter"
    12  	abci "github.com/fibonacci-chain/fbc/libs/tendermint/abci/types"
    13  )
    14  
    15  type CapabilityModuleAdapter struct {
    16  	capabilityModule.AppModule
    17  
    18  	tkeeper keeper.Keeper
    19  }
    20  
    21  func TNewCapabilityModuleAdapter(cdc *codec.CodecProxy, keeper keeper.Keeper) *CapabilityModuleAdapter {
    22  	ret := &CapabilityModuleAdapter{}
    23  	ret.AppModule = capabilityModule.NewAppModule(cdc, keeper)
    24  	ret.tkeeper = keeper
    25  	return ret
    26  }
    27  
    28  func (a CapabilityModuleAdapter) DefaultGenesis() json.RawMessage {
    29  	return adapter.ModuleCdc.MustMarshalJSON(types2.DefaultGenesis())
    30  }
    31  func (am CapabilityModuleAdapter) InitGenesis(ctx sdk.Context, data json.RawMessage) []abci.ValidatorUpdate {
    32  	return am.initGenesis(ctx, data)
    33  }
    34  
    35  func (am CapabilityModuleAdapter) initGenesis(ctx sdk.Context, data json.RawMessage) []abci.ValidatorUpdate {
    36  	var genState types2.GenesisState
    37  	// Initialize global index to index in genesis state
    38  
    39  	adapter.ModuleCdc.MustUnmarshalJSON(data, &genState)
    40  
    41  	capabilityModule.InitGenesis(ctx, am.tkeeper, genState)
    42  
    43  	return []abci.ValidatorUpdate{}
    44  }