github.com/fibonacci-chain/fbc@v0.0.0-20231124064014-c7636198c1e9/x/farm/client/utils/utils.go (about)

     1  package utils
     2  
     3  import (
     4  	"github.com/fibonacci-chain/fbc/libs/cosmos-sdk/codec"
     5  	sdk "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/types"
     6  	"io/ioutil"
     7  )
     8  
     9  // ManageWhiteListProposalJSON defines a ManageWhiteListProposalJSON with a deposit used to parse manage white list
    10  // proposals from a JSON file.
    11  type ManageWhiteListProposalJSON struct {
    12  	Title       string       `json:"title" yaml:"title"`
    13  	Description string       `json:"description" yaml:"description"`
    14  	PoolName    string       `json:"pool_name" yaml:"pool_name"`
    15  	IsAdded     bool         `json:"is_added" yaml:"is_added"`
    16  	Deposit     sdk.SysCoins `json:"deposit" yaml:"deposit"`
    17  }
    18  
    19  // ParseManageWhiteListProposalJSON parse json from proposal file to ManageWhiteListProposalJSON struct
    20  func ParseManageWhiteListProposalJSON(cdc *codec.Codec, proposalFilePath string) (proposal ManageWhiteListProposalJSON,
    21  	err error) {
    22  	contents, err := ioutil.ReadFile(proposalFilePath)
    23  	if err != nil {
    24  		return
    25  	}
    26  
    27  	cdc.MustUnmarshalJSON(contents, &proposal)
    28  	return
    29  }