Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AccountKeeper ¶
type AccountKeeper interface { GetParams(ctx sdk.Context) (params types.Params) GetAccount(ctx sdk.Context, addr sdk.AccAddress) types.AccountI SetAccount(ctx sdk.Context, acc types.AccountI) GetModuleAddress(moduleName string) sdk.AccAddress }
AccountKeeper defines the contract needed for AccountKeeper related APIs. Interface provides support to use non-sdk AccountKeeper for AnteHandler's decorators.
type BankKeeper ¶
type BeaconKeeper ¶
type BeaconKeeper interface { GetZeroFeeAsCoin(ctx sdk.Context) sdk.Coin GetParamDenom(ctx sdk.Context) string GetRegistrationFeeAsCoin(ctx sdk.Context) sdk.Coin GetRecordFeeAsCoin(ctx sdk.Context) sdk.Coin GetPurchaseStorageFeeAsCoin(ctx sdk.Context) sdk.Coin GetMaxPurchasableSlots(ctx sdk.Context, beaconId uint64) uint64 }
type CorrectBeaconFeeDecorator ¶
type CorrectBeaconFeeDecorator struct {
// contains filtered or unexported fields
}
CorrectBeaconFeeDecorator checks if the correct fees have been sent to pay for a BEACON register/record hash Tx, and if the fee paying account has sufficient funds to pay. It first checks if the Tx contains any BEACON Msgs, and if not, continues on to the next AnteHandler in the chain. If a BEACON Msg is detected, it then:
1. Checks sufficient fees have been included in the Tx, via the --fees flag 2. Checks the fee payer is the BEACON owner 3. Checks if the fee payer has sufficient funds in their account to pay for it, including any locked enterprise und
If any of the checks fail, a suitable error is returned.
func NewCorrectBeaconFeeDecorator ¶
func NewCorrectBeaconFeeDecorator(bankKeeper BankKeeper, accKeeper AccountKeeper, beaconKeeper BeaconKeeper, enterpriseKeeper EnterpriseKeeper) CorrectBeaconFeeDecorator