github.com/KiraCore/sekai@v0.3.43/x/tokens/keeper/freeze.go (about)

     1  package keeper
     2  
     3  import (
     4  	"github.com/KiraCore/sekai/x/tokens/types"
     5  	sdk "github.com/cosmos/cosmos-sdk/types"
     6  )
     7  
     8  func (k Keeper) AddTokensToBlacklist(ctx sdk.Context, tokens []string) {
     9  	tokensBlackWhites := k.GetTokenBlackWhites(ctx)
    10  	if tokensBlackWhites != nil {
    11  		tokensBlackWhites.Blacklisted = addTokens(tokensBlackWhites.Blacklisted, tokens)
    12  		k.SetTokenBlackWhites(ctx, tokensBlackWhites)
    13  	}
    14  }
    15  
    16  func (k Keeper) RemoveTokensFromBlacklist(ctx sdk.Context, tokens []string) {
    17  	tokensBlackWhites := k.GetTokenBlackWhites(ctx)
    18  	if tokensBlackWhites != nil {
    19  		tokensBlackWhites.Blacklisted = removeTokens(tokensBlackWhites.Blacklisted, tokens)
    20  		k.SetTokenBlackWhites(ctx, tokensBlackWhites)
    21  	}
    22  }
    23  
    24  func (k Keeper) AddTokensToWhitelist(ctx sdk.Context, tokens []string) {
    25  	tokensBlackWhites := k.GetTokenBlackWhites(ctx)
    26  	if tokensBlackWhites != nil {
    27  		tokensBlackWhites.Whitelisted = addTokens(tokensBlackWhites.Whitelisted, tokens)
    28  		k.SetTokenBlackWhites(ctx, tokensBlackWhites)
    29  	}
    30  }
    31  
    32  func (k Keeper) RemoveTokensFromWhitelist(ctx sdk.Context, tokens []string) {
    33  	tokensBlackWhites := k.GetTokenBlackWhites(ctx)
    34  	if tokensBlackWhites != nil {
    35  		tokensBlackWhites.Whitelisted = removeTokens(tokensBlackWhites.Whitelisted, tokens)
    36  		k.SetTokenBlackWhites(ctx, tokensBlackWhites)
    37  	}
    38  }
    39  
    40  func (k Keeper) SetTokenBlackWhites(ctx sdk.Context, tokensBlackWhite *types.TokensWhiteBlack) {
    41  	store := ctx.KVStore(k.storeKey)
    42  	store.Set(PrefixKeyTokenBlackWhite, k.cdc.MustMarshal(tokensBlackWhite))
    43  }
    44  
    45  func (k Keeper) GetTokenBlackWhites(ctx sdk.Context) *types.TokensWhiteBlack {
    46  	store := ctx.KVStore(k.storeKey)
    47  	bz := store.Get(PrefixKeyTokenBlackWhite)
    48  	if bz == nil {
    49  		return nil
    50  	}
    51  
    52  	tokensBlackWhite := new(types.TokensWhiteBlack)
    53  	k.cdc.MustUnmarshal(bz, tokensBlackWhite)
    54  
    55  	return tokensBlackWhite
    56  }