Skip to content

FeePoolEternalStorage

Description

FeePoolEternalStorage is currently used only to store the last fee withdrawal timestamp for each address. See FeePool._claimFees and FeePool.feesByPeriod for details of what this information is used for.

This contract is just wrapper around EternalStorage with a limited setup period and a setup function that sets each account's last fee withdrawal times.

Source: FeePoolEternalStorage.sol

Architecture


Inheritance Graph

FeePoolEternalStorage inheritance graph


Variables

LAST_FEE_WITHDRAWAL

This constant is an arbitrary string to be used to access the correct slot in the eternal storage uint map where an account's last withdrawal time is kept.

This is hashed together with the address to obtain the correct key. Its value must be the same as FeePool.LAST_FEE_WITHDRAWAL.

Type: bytes32 const

Value: "last_fee_withdrawal"


Functions


constructor

Initialises the inherited EternalStorage instance, and sets a limited setup period of six weeks.

Details

Signature

constructor(address _owner, address _feePool) public

Superconstructors


importFeeWithdrawalData

This is a helper to import fee withdrawal information from a previous version of the system during the setup period.

Details

Signature

importFeeWithdrawalData(address[] accounts, uint[] feePeriodIDs) external

Modifiers

Preconditions

  • The length of the accounts and feePeriodIDs arrays must be equal, otherwise the transaction reverts.