keeper

package
v4.2.0-rc1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 14, 2023 License: Apache-2.0 Imports: 23 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewMsgServerImpl

func NewMsgServerImpl(keeper Keeper) uibc.MsgServer

NewMsgServerImpl returns an implementation of MsgServer for the x/uibc module.

Types

type Keeper

type Keeper struct {
	// contains filtered or unexported fields
}

func NewKeeper

func NewKeeper(
	cdc codec.BinaryCodec, key storetypes.StoreKey, ics4Wrapper types.ICS4Wrapper, leverageKeeper uibc.LeverageKeeper,
	oracleKeeper uibc.OracleKeeper,
) Keeper

func (Keeper) CheckAndUpdateQuota

func (k Keeper) CheckAndUpdateQuota(ctx sdk.Context, denom string, newOutflow sdkmath.Int) error

CheckAndUpdateQuota checks if adding a newOutflow is doesn't exceed the max quota and updates the current quota metrics.

func (Keeper) ExportGenesis

func (k Keeper) ExportGenesis(ctx sdk.Context) *uibc.GenesisState

ExportGenesis returns the x/uibc module's exported genesis state.

func (Keeper) GetAllOutflows

func (k Keeper) GetAllOutflows(ctx sdk.Context) (sdk.DecCoins, error)

GetAllOutflows returns outflows of all tokens.

func (Keeper) GetAppVersion

func (k Keeper) GetAppVersion(ctx sdk.Context, portID, channelID string) (string, bool)

GetAppVersion returns the underlying application version.

func (Keeper) GetExpire

func (k Keeper) GetExpire(ctx sdk.Context) (*time.Time, error)

GetExpire returns ibc-transfer quota expires time.

func (Keeper) GetFundsFromPacket

func (k Keeper) GetFundsFromPacket(packet exported.PacketI) (sdkmath.Int, string, error)

GetFundsFromPacket returns transfer amount and denom

func (Keeper) GetLocalDenom

func (k Keeper) GetLocalDenom(denom string) string

GetLocalDenom retruns ibc denom Expected denoms in the following cases:

send non-native: transfer/channel-0/denom -> ibc/xxx send native: denom -> denom recv (B)non-native: denom recv (B)native: transfer/channel-0/denom

func (Keeper) GetOutflows

func (k Keeper) GetOutflows(ctx sdk.Context, ibcDenom string) (sdk.DecCoin, error)

GetOutflows retunes the rate limits of ibc denom.

func (Keeper) GetParams

func (k Keeper) GetParams(ctx sdk.Context) (params uibc.Params)

GetParams gets the x/uibc module's parameters.

func (Keeper) GetTotalOutflow

func (k Keeper) GetTotalOutflow(ctx sdk.Context) sdk.Dec

GetTotalOutflow returns the total outflow of ibc-transfer amount.

func (Keeper) InitGenesis

func (k Keeper) InitGenesis(ctx sdk.Context, genState uibc.GenesisState)

InitGenesis initializes the x/uibc module's state from a provided genesis state.

func (Keeper) PrefixStore

func (k Keeper) PrefixStore(ctx *sdk.Context, prefix []byte) store.KVStore

PrefixStore creates an new prefix store. It will automatically remove provided prefix from keys when using with the iterator.

func (Keeper) ResetAllQuotas

func (k Keeper) ResetAllQuotas(ctx sdk.Context) error

ResetAllQuotas will zero the ibc-transfer quotas

func (Keeper) SendPacket

func (k Keeper) SendPacket(ctx sdk.Context, chanCap *capabilitytypes.Capability, packet ibcexported.PacketI) error

SendPacket wraps IBC ChannelKeeper's SendPacket function

func (Keeper) SetDenomOutflow

func (k Keeper) SetDenomOutflow(ctx sdk.Context, outflow sdk.DecCoin)

SetDenomOutflow save the outflows of denom into store.

func (Keeper) SetExpire

func (k Keeper) SetExpire(ctx sdk.Context, expires time.Time) error

SetExpire save the quota expire time of ibc denom into.

func (Keeper) SetIBCStatus

func (k Keeper) SetIBCStatus(ctx sdk.Context, ibcStatus uibc.IBCTransferStatus) error

SetIBCStatus update the ibc pause status in module params.

func (Keeper) SetOutflows

func (k Keeper) SetOutflows(ctx sdk.Context, outflows sdk.DecCoins)

SetOutflows save the updated IBC outflows of by provided tokens.

func (Keeper) SetParams

func (k Keeper) SetParams(ctx sdk.Context, params uibc.Params) error

SetParams sets the x/uibc module's parameters.

func (Keeper) SetTotalOutflowSum

func (k Keeper) SetTotalOutflowSum(ctx sdk.Context, amount sdk.Dec)

SetTotalOutflowSum save the total outflow of ibc-transfer amount.

func (Keeper) UndoUpdateQuota

func (k Keeper) UndoUpdateQuota(ctx sdk.Context, denom string, amount sdkmath.Int) error

UndoUpdateQuota subtracts `amount` from quota metric of the ibc denom.

func (Keeper) UpdateQuotaParams

func (k Keeper) UpdateQuotaParams(ctx sdk.Context, totalQuota, quotaPerDenom sdk.Dec, quotaDuration time.Duration,
) error

UpdateQuotaParams update the ibc-transfer quota params for ibc denoms

func (Keeper) WriteAcknowledgement

func (k Keeper) WriteAcknowledgement(ctx sdk.Context, chanCap *capabilitytypes.Capability, packet ibcexported.PacketI,
	acknowledgement ibcexported.Acknowledgement,
) error

WriteAcknowledgement wraps IBC ChannelKeeper's WriteAcknowledgement function ICS29 WriteAcknowledgement is used for asynchronous acknowledgements

type Querier

type Querier struct {
	Keeper
}

Querier implements a QueryServer for the x/uibc module.

func NewQuerier

func NewQuerier(k Keeper) Querier

func (Querier) AllOutflows

AllOutflows queries outflows for all denom in the current period.

func (Querier) Outflows

func (q Querier) Outflows(goCtx context.Context, req *uibc.QueryOutflows) (
	*uibc.QueryOutflowsResponse, error,
)

Outflows queries denom outflows in the current period. If req.Denom is not set, then we return total outflows.

func (Querier) Params

func (q Querier) Params(goCtx context.Context, _ *uibc.QueryParams) (
	*uibc.QueryParamsResponse, error,
)

Params returns params of the x/uibc module.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL