github.com/KiraCore/sekai@v0.3.43/x/basket/proposal_handler.go (about) 1 package basket 2 3 import ( 4 kiratypes "github.com/KiraCore/sekai/types" 5 "github.com/KiraCore/sekai/x/basket/keeper" 6 "github.com/KiraCore/sekai/x/basket/types" 7 govtypes "github.com/KiraCore/sekai/x/gov/types" 8 sdk "github.com/cosmos/cosmos-sdk/types" 9 ) 10 11 type ApplyCreateBasketProposalHandler struct { 12 keeper keeper.Keeper 13 } 14 15 func NewApplyCreateBasketProposalHandler(keeper keeper.Keeper) *ApplyCreateBasketProposalHandler { 16 return &ApplyCreateBasketProposalHandler{ 17 keeper: keeper, 18 } 19 } 20 21 func (a ApplyCreateBasketProposalHandler) ProposalType() string { 22 return kiratypes.ProposalTypeCreateBasket 23 } 24 25 func (a ApplyCreateBasketProposalHandler) Apply(ctx sdk.Context, proposalID uint64, proposal govtypes.Content, slash sdk.Dec) error { 26 p := proposal.(*types.ProposalCreateBasket) 27 return a.keeper.CreateBasket(ctx, p.Basket) 28 } 29 30 type ApplyEditBasketProposalHandler struct { 31 keeper keeper.Keeper 32 } 33 34 func NewApplyEditBasketProposalHandler(keeper keeper.Keeper) *ApplyEditBasketProposalHandler { 35 return &ApplyEditBasketProposalHandler{ 36 keeper: keeper, 37 } 38 } 39 40 func (a ApplyEditBasketProposalHandler) ProposalType() string { 41 return kiratypes.ProposalTypeEditBasket 42 } 43 44 func (a ApplyEditBasketProposalHandler) Apply(ctx sdk.Context, proposalID uint64, proposal govtypes.Content, slash sdk.Dec) error { 45 p := proposal.(*types.ProposalEditBasket) 46 47 return a.keeper.EditBasket(ctx, p.Basket) 48 } 49 50 type ApplyBasketWithdrawSurplusProposalHandler struct { 51 keeper keeper.Keeper 52 } 53 54 func NewApplyBasketWithdrawSurplusProposalHandler(keeper keeper.Keeper) *ApplyBasketWithdrawSurplusProposalHandler { 55 return &ApplyBasketWithdrawSurplusProposalHandler{ 56 keeper: keeper, 57 } 58 } 59 60 func (a ApplyBasketWithdrawSurplusProposalHandler) ProposalType() string { 61 return kiratypes.ProposalTypeBasketWithdrawSurplus 62 } 63 64 func (a ApplyBasketWithdrawSurplusProposalHandler) Apply(ctx sdk.Context, proposalID uint64, proposal govtypes.Content, slash sdk.Dec) error { 65 p := proposal.(*types.ProposalBasketWithdrawSurplus) 66 return a.keeper.BasketWithdrawSurplus(ctx, *p) 67 }