github.com/cosmos/cosmos-sdk@v0.50.10/client/grpc/cmtservice/util.go (about)

     1  package cmtservice
     2  
     3  import (
     4  	cmtprototypes "github.com/cometbft/cometbft/proto/tendermint/types"
     5  
     6  	sdk "github.com/cosmos/cosmos-sdk/types"
     7  )
     8  
     9  // convertHeader converts CometBFT header to sdk header
    10  func convertHeader(h cmtprototypes.Header) Header {
    11  	return Header{
    12  		Version:            h.Version,
    13  		ChainID:            h.ChainID,
    14  		Height:             h.Height,
    15  		Time:               h.Time,
    16  		LastBlockId:        h.LastBlockId,
    17  		ValidatorsHash:     h.ValidatorsHash,
    18  		NextValidatorsHash: h.NextValidatorsHash,
    19  		ConsensusHash:      h.ConsensusHash,
    20  		AppHash:            h.AppHash,
    21  		DataHash:           h.DataHash,
    22  		EvidenceHash:       h.EvidenceHash,
    23  		LastResultsHash:    h.LastResultsHash,
    24  		LastCommitHash:     h.LastCommitHash,
    25  		ProposerAddress:    sdk.ConsAddress(h.ProposerAddress).String(),
    26  	}
    27  }
    28  
    29  // convertBlock converts CometBFT block to sdk block
    30  func convertBlock(cmtblock *cmtprototypes.Block) *Block {
    31  	b := new(Block)
    32  
    33  	b.Header = convertHeader(cmtblock.Header)
    34  	b.LastCommit = cmtblock.LastCommit
    35  	b.Data = cmtblock.Data
    36  	b.Evidence = cmtblock.Evidence
    37  
    38  	return b
    39  }