2019-06-05 16:26:17 -07:00
|
|
|
package types
|
|
|
|
|
|
|
|
import (
|
2019-06-28 13:11:27 -07:00
|
|
|
"fmt"
|
|
|
|
|
2019-06-05 16:26:17 -07:00
|
|
|
sdk "github.com/cosmos/cosmos-sdk/types"
|
|
|
|
)
|
|
|
|
|
|
|
|
// GenesisState - crisis genesis state
|
|
|
|
type GenesisState struct {
|
2019-07-05 16:25:56 -07:00
|
|
|
ConstantFee sdk.Coin `json:"constant_fee" yaml:"constant_fee"`
|
2019-06-05 16:26:17 -07:00
|
|
|
}
|
|
|
|
|
|
|
|
// NewGenesisState creates a new GenesisState object
|
|
|
|
func NewGenesisState(constantFee sdk.Coin) GenesisState {
|
|
|
|
return GenesisState{
|
|
|
|
ConstantFee: constantFee,
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
// DefaultGenesisState creates a default GenesisState object
|
|
|
|
func DefaultGenesisState() GenesisState {
|
|
|
|
return GenesisState{
|
|
|
|
ConstantFee: sdk.NewCoin(sdk.DefaultBondDenom, sdk.NewInt(1000)),
|
|
|
|
}
|
|
|
|
}
|
2019-06-28 13:11:27 -07:00
|
|
|
|
|
|
|
// ValidateGenesis - validate crisis genesis data
|
|
|
|
func ValidateGenesis(data GenesisState) error {
|
|
|
|
if !data.ConstantFee.IsPositive() {
|
|
|
|
return fmt.Errorf("constant fee must be positive: %s", data.ConstantFee)
|
|
|
|
}
|
|
|
|
return nil
|
|
|
|
}
|