Skip to content

Commit

Permalink
seporate token distribution logic
Browse files Browse the repository at this point in the history
  • Loading branch information
MarkCherepovskyi committed Jul 9, 2024
1 parent 08aa3d4 commit f4bbe34
Show file tree
Hide file tree
Showing 5 changed files with 20 additions and 16 deletions.
5 changes: 0 additions & 5 deletions types/tokens.go

This file was deleted.

3 changes: 2 additions & 1 deletion x/accumulator/keeper/keeper.go
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,8 @@ type (
GetParams(c sdk.Context) types.Params
SetParams(c sdk.Context, params types.Params)
Params(c context.Context, req *types.QueryParamsRequest) (*types.QueryParamsResponse, error)
DistributeTokens(ctx sdk.Context, fromPool string, isSentToModule bool, amount sdk.Coins, receiverModule string, receiverAddress *sdk.AccAddress) error
DistributeToModule(ctx sdk.Context, pool string, amount sdk.Coins, receiverModule string) error
DistributeToAccount(ctx sdk.Context, pool string, amount sdk.Coins, receiver sdk.AccAddress) error
}

BaseKeeper struct {
Expand Down
24 changes: 16 additions & 8 deletions x/accumulator/keeper/token_distribution.go
Original file line number Diff line number Diff line change
Expand Up @@ -6,20 +6,28 @@ import (
"github.com/cosmos/cosmos-sdk/x/accumulator/types"
)

func (k BaseKeeper) DistributeTokens(ctx sdk.Context, fromPool string, isSentToModule bool, amount sdk.Coins, receiverModule string, receiverAddress *sdk.AccAddress) error {
poolAddress := GetPoolAddress(fromPool)
func (k BaseKeeper) DistributeToModule(ctx sdk.Context, pool string, amount sdk.Coins, receiverModule string) error {
poolAddress := GetPoolAddress(pool)
if poolAddress == nil {
return types.ErrInvalidPool
}

if isSentToModule {
return k.sendFromAddressToModule(ctx, poolAddress, receiverModule, amount)
return k.sendFromAddressToModule(ctx, poolAddress, receiverModule, amount)

}

func (k BaseKeeper) DistributeToAccount(ctx sdk.Context, pool string, amount sdk.Coins, receiver sdk.AccAddress) error {

poolAddress := GetPoolAddress(pool)
if poolAddress == nil {
return types.ErrInvalidPool
}

if receiverAddress == nil {
if receiver == nil {
return types.ErrInvalidReceiver
}
return k.sendFromAddressToAddress(ctx, poolAddress, *receiverAddress, amount)

return k.sendFromAddressToAddress(ctx, poolAddress, receiver, amount)

}

Expand All @@ -32,7 +40,7 @@ func (k BaseKeeper) sendFromAddressToModule(ctx sdk.Context, poolAddress sdk.Acc
)

if err != nil {
err = errors.Wrap(err, "sending native coins to address")
err = errors.Wrap(err, "sending native coins to account")
k.Logger(ctx).Error(err.Error())
return err
}
Expand Down Expand Up @@ -62,7 +70,7 @@ func (k BaseKeeper) sendFromAddressToAddress(ctx sdk.Context, poolAddress sdk.Ac
)

if err != nil {
err = errors.Wrap(err, "sending native coins to module")
err = errors.Wrap(err, "sending native coins to account")
k.Logger(ctx).Error(err.Error())
return err
}
Expand Down
2 changes: 1 addition & 1 deletion x/mint/keeper/keeper.go
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ func (k Keeper) BondedRatio(ctx sdk.Context) sdk.Dec {
}

func (k Keeper) SendFromAccumulator(ctx sdk.Context, amount sdk.Coins) error {
err := k.accumulatorKeeper.DistributeTokens(ctx, accumulatortypes.ValidatorPoolName, true, amount, types.ModuleName, nil)
err := k.accumulatorKeeper.DistributeToModule(ctx, accumulatortypes.ValidatorPoolName, amount, types.ModuleName)
if err != nil {
err = errors.Wrap(err, "failed to call accumulator module")
k.Logger(sdk.UnwrapSDKContext(ctx)).Error(err.Error())
Expand Down
2 changes: 1 addition & 1 deletion x/mint/types/expected_keepers.go
Original file line number Diff line number Diff line change
Expand Up @@ -30,5 +30,5 @@ type BankKeeper interface {
}

type AccumulatorKeeper interface {
DistributeTokens(ctx sdk.Context, fromPool string, isSentToModule bool, amount sdk.Coins, receiverModule string, receiverAddress *sdk.AccAddress) error
DistributeToModule(ctx sdk.Context, pool string, amount sdk.Coins, receiverModule string) error
}

0 comments on commit f4bbe34

Please sign in to comment.