keeper

package
v0.6.1 Latest Latest
Warning

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

Go to latest
Published: Oct 1, 2022 License: Apache-2.0 Imports: 19 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewMsgServerImpl

func NewMsgServerImpl(keeper *Keeper) types.MsgServer

NewMsgServerImpl creates and returns a new types.MsgServer, fulfilling the icacontrol Msg service interface

func RegisterInvariants

func RegisterInvariants(ir sdk.InvariantRegistry, k Keeper)

RegisterInvariants registers the gal module invariants

Types

type Hooks

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

Hooks wrapper struct for gal keeper

func (Hooks) AfterAutoStakingEnd

func (h Hooks) AfterAutoStakingEnd()

func (Hooks) AfterDelegateEnd

func (h Hooks) AfterDelegateEnd(ctx sdk.Context, delegateMsg stakingtypes.MsgDelegate)

delegateAddr(controllerAddr), validatorAddr, delegateAmt

func (Hooks) AfterOnRecvPacket

func (h Hooks) AfterOnRecvPacket(ctx sdk.Context, data transfertypes.FungibleTokenPacketData)

func (Hooks) AfterTransferEnd

func (h Hooks) AfterTransferEnd(ctx sdk.Context, data transfertypes.FungibleTokenPacketData, baseDenom string)

AfterTransferEnd coins user deposit information. It will be used in share token minting process.

func (Hooks) AfterUndelegateEnd

func (h Hooks) AfterUndelegateEnd(ctx sdk.Context, undelegateMsg stakingtypes.MsgUndelegate, msg *stakingtypes.MsgUndelegateResponse)

AfterUndelegateEnd is executed when ICA undelegation request finished. 1. It removes undelegation history in store. 2. It saves undelegation finish time to store.

func (Hooks) AfterWithdrawEnd

func (h Hooks) AfterWithdrawEnd(ctx sdk.Context, transferMsg transfertypes.MsgTransfer)

AfterWithdrawEnd is executed IcaWithdraw request finished. 1. Increase the withdrawal version. 2. The withdrawal status registered as transferred changes

func (Hooks) BeforeUndelegateStart

func (h Hooks) BeforeUndelegateStart(ctx sdk.Context, zoneId string)

type IBCTransferOption

type IBCTransferOption struct {
	SourcePort    string
	SourceChannel string
	Token         sdk.Coin
	Sender        string
	Receiver      string
}

type Keeper

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

Keeper defines a module interface that facilitates the transfer of coins between accounts.

func NewKeeper

func NewKeeper(cdc codec.BinaryCodec,
	key sdk.StoreKey,
	paramSpace paramtypes.Subspace,
	bankKeeper types.BankKeeper,
	icaControlKeeper icacontrolkeeper.Keeper,
	ibcTransferKeeper transfer.Keeper,
	oracleKeeper oraclekeeper.Keeper,
	airdropKeeper types.AirdropKeeper) Keeper

func (Keeper) CalculateDepositAlpha

func (k Keeper) CalculateDepositAlpha(userDepositAmt, totalShareTokenSupply, totalStakedAmount *big.Int) *big.Int

CalculateDepositAlpha calculates alpha value. DepositAlpha = userDepositAmount / totalStakedAmount Issued snAsset = Alpha * totalShareTokenSupply

func (Keeper) CalculateWithdrawAlpha

func (k Keeper) CalculateWithdrawAlpha(burnedStTokenAmt, totalShareTokenSupply, totalStakedAmount *big.Int) *big.Int

CalculateWithdrawAlpha calculates lambda value. WithdrawAlpha = userWithdrawAmount / totalStakedAmount Issued coin = Lambda * totalShareTokenSupply

func (Keeper) ChangeDepositState

func (k Keeper) ChangeDepositState(ctx sdk.Context, zoneId string, preState, postState types.DepositStatusType) bool

ChangeDepositState updates the deposit records corresponding to the preState to postState. This operation runs in the hook after the remote deposit is run.

func (Keeper) ChangeUndelegateState

func (k Keeper) ChangeUndelegateState(ctx sdk.Context, zoneId string, state types.UndelegatedStatusType)

ChangeUndelegateState changes the status for recorded undelegation. UNDELEGATE_REQUEST_USER : Just requested undelegate by user. It is not in undelegate period. UNDELEGATE_REQUEST_ICA : Requested by ICA, It is in undelegate period.

func (Keeper) ChangeWithdrawState

func (k Keeper) ChangeWithdrawState(ctx sdk.Context, zoneId string, preState, postState types.WithdrawStatusType)

ChangeWithdrawState changes each withdraw states. WithdrawStatusRegistered : Withdrawal requests have been registered state of the user. The property of this condition is not carried over from chain host. WithdrawStatusTransferred : WithdrawStatusTransferred is a state in which assets are periodically transferred to the Supernova chain. Assets in this state can be withdrawn by the user.

func (Keeper) ClaimShareToken

func (k Keeper) ClaimShareToken(ctx sdk.Context, zone *icacontrolkeeper.RegisteredZone, asset sdk.Coin) (sdk.Coin, error)

ClaimShareToken is used when user want to claim their share token. It calculates user's share and the amount of claimable share token.

func (Keeper) ClaimWithdrawAsset

func (k Keeper) ClaimWithdrawAsset(ctx sdk.Context, from sdk.AccAddress, withdrawer sdk.AccAddress, amt sdk.Coin) error

ClaimWithdrawAsset is used when user want to claim their asset which is after undeleagted.

func (Keeper) ConvertSnAssetToWAssetDecimal

func (k Keeper) ConvertSnAssetToWAssetDecimal(amount *big.Int, decimal int64, denom string) sdk.Coin

ConvertSnAssetToWAssetDecimal changes snAsset to matching coin denom and decimal.

func (Keeper) ConvertWAssetToSnAssetDecimal

func (k Keeper) ConvertWAssetToSnAssetDecimal(amount *big.Int, decimal int64, denom string) sdk.Coin

ConvertWAssetToSnAssetDecimal changes the common coin to snAsset's denom and decimal.

func (Keeper) DeleteRecordedDepositItem

func (k Keeper) DeleteRecordedDepositItem(ctx sdk.Context, zoneId string, depositor sdk.AccAddress, state types.DepositStatusType) error

DeleteRecordedDepositItem deletes the records corresponding to state among the defositor's assets deposited in the zone corresponding to zoneId.

func (Keeper) DeleteUndelegateRecords

func (k Keeper) DeleteUndelegateRecords(ctx sdk.Context, zoneId string, state types.UndelegatedStatusType)

DeleteUndelegateRecords deletes records corresponding to zoneId and state for undelegate records.

func (Keeper) DeleteWithdrawRecord

func (k Keeper) DeleteWithdrawRecord(ctx sdk.Context, withdraw *types.WithdrawRecord)

DeleteWithdrawRecord removes withdraw record.

func (Keeper) GetAllAmountNotMintShareToken

func (k Keeper) GetAllAmountNotMintShareToken(ctx sdk.Context, zone *icacontroltypes.RegisteredZone) (sdk.Coin, error)

GetAllAmountNotMintShareToken returns the sum of assets that have not yet been issued by the user among the assets that have been deposited.

func (Keeper) GetAllUndelegateRecord

func (k Keeper) GetAllUndelegateRecord(ctx sdk.Context, zoneId string) []*types.UndelegateRecord

GetAllUndelegateRecord returns all undelegate records corresponding to zoneId.

func (Keeper) GetDelegateVersion

func (k Keeper) GetDelegateVersion(ctx sdk.Context, zoneId string) (version uint64, height uint64)

GetDelegateVersion returns version for delegation corresponding to zone-id records.

func (Keeper) GetDelegateVersionStore

func (k Keeper) GetDelegateVersionStore(ctx sdk.Context) prefix.Store

GetDelegateVersionStore returns store for delegation.

func (Keeper) GetParams

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

GetParams returns total set of gal parameters.

func (Keeper) GetSnDenomForIBCDenom

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

GetSnDenomForIBCDenom changes the IBCDenom to the appropriate SnDenom.

func (Keeper) GetTotalDepositAmtForUserAddr

func (k Keeper) GetTotalDepositAmtForUserAddr(ctx sdk.Context, zoneId, userAddr, denom string) sdk.Coin

GetTotalDepositAmtForUserAddr returns the sum of the user's address entered as input and the deposit coin corresponding to the coin denom.

func (Keeper) GetTotalDepositAmtForZoneId

func (k Keeper) GetTotalDepositAmtForZoneId(ctx sdk.Context, zoneId, denom string, state types.DepositStatusType) sdk.Coin

GetTotalDepositAmtForZoneId returns the sum of all Deposit coins corresponding to a specified zoneId.

func (Keeper) GetTotalStakedForLazyMinting

func (k Keeper) GetTotalStakedForLazyMinting(ctx sdk.Context, denom, transferPortId, transferChanId string) (sdk.Coin, error)

GetTotalStakedForLazyMinting returns the sum of coins delegated to the Host chain, which have not been issued snAsset.

func (Keeper) GetTotalWithdrawAmountForZoneId

func (k Keeper) GetTotalWithdrawAmountForZoneId(ctx sdk.Context, zoneId, denom string, blockTime time.Time) sdk.Coin

GetTotalWithdrawAmountForZoneId returns total withdraw amount corresponding to zone-id and denom.

func (Keeper) GetUndelegateAmount

func (k Keeper) GetUndelegateAmount(ctx sdk.Context, snDenom string, zone icacontroltypes.RegisteredZone, version uint64) (sdk.Coin, sdk.Int)

GetUndelegateAmount gets the information that corresponds to the zone during the de-delegation history.

func (Keeper) GetUndelegateRecord

func (k Keeper) GetUndelegateRecord(ctx sdk.Context, zoneId, delegator string) (result *types.UndelegateRecord, found bool)

GetUndelegateRecord returns the record corresponding to zoneId and delegator among the user's undelegation records.

func (Keeper) GetUndelegateVersion

func (k Keeper) GetUndelegateVersion(ctx sdk.Context, zoneId string) (version uint64, height uint64)

GetUndelegateVersion returns the latest undelegation version.

func (Keeper) GetUndelegateVersionStore

func (k Keeper) GetUndelegateVersionStore(ctx sdk.Context) prefix.Store

GetUndelegateVersionStore returns the store that stores the UndelegateVersion data. The un-delegation task is periodically operated by the bot, so it stores the version for the last action.

func (Keeper) GetUserDepositRecord

func (k Keeper) GetUserDepositRecord(ctx sdk.Context, zoneId string, claimer sdk.AccAddress) (result *types.DepositRecord, found bool)

GetUserDepositRecord returns the amount of coin user deposit by address.

func (Keeper) GetWithdrawAmountForUser

func (k Keeper) GetWithdrawAmountForUser(ctx sdk.Context, zoneId, denom string, withdrawer string) sdk.Coin

GetWithdrawAmountForUser returns withdraw record corresponding to zone id and denom.

func (Keeper) GetWithdrawAmt

func (k Keeper) GetWithdrawAmt(ctx sdk.Context, amt sdk.Coin) (sdk.Coin, error)

GetWithdrawAmt is used for calculating the amount of coin user can withdraw after un-delegate. This function is executed when ICA un-delegate call executed, and calculate using the balance of user's share coin.

func (Keeper) GetWithdrawRecord

func (k Keeper) GetWithdrawRecord(ctx sdk.Context, zoneId, withdrawer string) (result *types.WithdrawRecord, found bool)

GetWithdrawRecord returns withdraw record item by key.

func (Keeper) GetWithdrawVersion

func (k Keeper) GetWithdrawVersion(ctx sdk.Context, zoneId string) (version uint64, height uint64)

GetWithdrawVersion returns current withdraw-version.

func (Keeper) GetWithdrawVersionStore

func (k Keeper) GetWithdrawVersionStore(ctx sdk.Context) prefix.Store

GetWithdrawVersionStore returns store for Withdraw-version.

func (Keeper) HasMaxUndelegateEntries

func (k Keeper) HasMaxUndelegateEntries(undelegateRecords types.UndelegateRecord, maxEntries int64) bool

func (Keeper) Hooks

func (k Keeper) Hooks() Hooks

func (Keeper) IsAbleToWithdraw

func (k Keeper) IsAbleToWithdraw(ctx sdk.Context, from sdk.AccAddress, amt sdk.Coin) bool

IsAbleToWithdraw returns if user can withdraw their asset. It refers nova ICA account. If ICA account's balance is greater than user withdraw request amount, this function returns true.

func (Keeper) IterateDepositRecord

func (k Keeper) IterateDepositRecord(ctx sdk.Context, zoneId string, fn func(index int64, depositRecord types.DepositRecord) (stop bool))

IterateDepositRecord navigates all deposit requests.

func (Keeper) IterateUndelegatedRecords

func (k Keeper) IterateUndelegatedRecords(ctx sdk.Context, zoneId string, fn func(index int64, undelegateInfo *types.UndelegateRecord) (stop bool))

IterateUndelegatedRecords navigates de-delegation records.

func (Keeper) IterateWithdrawRecords

func (k Keeper) IterateWithdrawRecords(ctx sdk.Context, zoneId string, fn func(index int64, withdrawInfo *types.WithdrawRecord) (stop bool))

IterateWithdrawRecords iterate all withdraw records.

func (Keeper) Logger

func (k Keeper) Logger(ctx sdk.Context) log.Logger

Logger returns a module-specific logger.

func (Keeper) MintTo

func (k Keeper) MintTo(ctx sdk.Context, claimer sdk.AccAddress, mintCoin sdk.Coin) error

MintTo mints sn-asset(share token) regard with deposited token to claimer.

func (Keeper) SetDelegateRecordVersion

func (k Keeper) SetDelegateRecordVersion(ctx sdk.Context, zoneId string, state types.DepositStatusType, version uint64)

SetDelegateRecordVersion updates the deposit version performed by the bot for the state of the deposit records corresponding to zoneId.

func (Keeper) SetDelegateVersion

func (k Keeper) SetDelegateVersion(ctx sdk.Context, zoneId string, trace types.IBCTrace)

SetDelegateVersion sets version for delegation corresponding to zone-id records.

func (Keeper) SetDepositOracleVersion

func (k Keeper) SetDepositOracleVersion(ctx sdk.Context, zoneId string, state types.DepositStatusType, oracleVersion uint64)

SetDepositOracleVersion updates the Oracle version for recorded Deposit requests. This action is required for the correct equity calculation.

func (Keeper) SetDepositRecord

func (k Keeper) SetDepositRecord(ctx sdk.Context, msg *types.DepositRecord)

SetDepositRecord stores the deposit record which stores amount of the coin and user address.

func (Keeper) SetParams

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

SetParams sets the total set of gal parameters.

func (Keeper) SetUndelegateRecord

func (k Keeper) SetUndelegateRecord(ctx sdk.Context, record *types.UndelegateRecord)

SetUndelegateRecord writes a record of the user's undelegation actions.

func (Keeper) SetUndelegateRecordVersion

func (k Keeper) SetUndelegateRecordVersion(ctx sdk.Context, zoneId string, state types.UndelegatedStatusType, version uint64) bool

SetUndelegateRecordVersion navigates undelegate records and updates version for records corresponding to zoneId and state.

func (Keeper) SetUndelegateVersion

func (k Keeper) SetUndelegateVersion(ctx sdk.Context, zoneId string, trace types.IBCTrace)

SetUndelegateVersion sets the new un-delgate Version.

func (Keeper) SetWithdrawRecord

func (k Keeper) SetWithdrawRecord(ctx sdk.Context, record *types.WithdrawRecord)

SetWithdrawRecord stores the withdraw record.

func (Keeper) SetWithdrawRecordVersion

func (k Keeper) SetWithdrawRecordVersion(ctx sdk.Context, zoneId string, state types.WithdrawStatusType, version uint64)

SetWithdrawRecordVersion set new version to withdraw record corresponding to zoneId and state.

func (Keeper) SetWithdrawRecords

func (k Keeper) SetWithdrawRecords(ctx sdk.Context, zoneId string, time time.Time)

SetWithdrawRecords write multiple withdraw record.

func (Keeper) SetWithdrawVersion

func (k Keeper) SetWithdrawVersion(ctx sdk.Context, zoneId string, trace types.IBCTrace)

SetWithdrawVersion set withdraw version for zone id.

func (Keeper) TotalClaimableAssets

func (k Keeper) TotalClaimableAssets(ctx sdk.Context, zone icacontrolkeeper.RegisteredZone, claimer sdk.AccAddress) (*sdk.Coin, error)

TotalClaimableAssets returns the total amount of claimable snAsset.

func (Keeper) TransferToTargetZone

func (k Keeper) TransferToTargetZone(ctx sdk.Context, option *IBCTransferOption) error

TransferToTargetZone transfers user's asset to target zone(Host chain) using IBC transfer.

type QueryServer

type QueryServer struct {
	types.QueryServer
	// contains filtered or unexported fields
}

func NewQueryServer

func NewQueryServer(keeper *Keeper) *QueryServer

func (QueryServer) ClaimableAmount

func (QueryServer) DelegateVersion

func (QueryServer) DepositAmount

func (QueryServer) DepositRecords

func (QueryServer) EstimateSnAsset

func (QueryServer) Params

func (QueryServer) UndelegateRecords

func (QueryServer) UndelegateVersion

func (QueryServer) WithdrawRecords

func (QueryServer) WithdrawVersion

Jump to

Keyboard shortcuts

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