Skip to main content

BaseFeeOracle.sol

Interprets the base fee from our base fee provider contract to determine if a harvest is permissable.

Version 0.1.0

Functions

constructor

  function constructor(
) public

Use this if our network hasn't implemented the base fee method yet

isCurrentBaseFeeAcceptable

  function isCurrentBaseFeeAcceptable(
) public returns (bool)

Returns whether we should allow harvests based on current base fee.

setMaxAcceptableBaseFee

  function setMaxAcceptableBaseFee(
uint256 _maxAcceptableBaseFee
) external

Set the maximum base fee we want for our keepers to accept. Gwei is 1e9.

Throws if the caller is not authorized or gov.

Parameters

NameTypeDescription
_maxAcceptableBaseFeeuint256The acceptable maximum price to pay in wei.

setManualBaseFeeBool

  function setManualBaseFeeBool(
bool _manualBaseFeeBool
) external

If we don't have a provider, then manually determine if true or not. Useful in testing as well.

Throws if the caller is not authorized or gov.

Parameters

NameTypeDescription
_manualBaseFeeBoolboolBoolean to allow/block harvests if we don't have a provider set up.

setAuthorized

  function setAuthorized(
address _target,
bool _value
) external

Controls whether a non-gov address can adjust certain params.

Throws if the caller is not current governance.

Parameters

NameTypeDescription
_targetaddressThe address to add/remove authorization for.
_valueboolBoolean to grant or revoke access.

setPendingGovernance

  function setPendingGovernance(
address _governance
) external

Starts the 1st phase of the governance transfer.

Throws if the caller is not current governance.

Parameters

NameTypeDescription
_governanceaddressThe next governance address

acceptGovernance

  function acceptGovernance(
) external

Completes the 2nd phase of the governance transfer.

Throws if the caller is not the pending caller. Emits a NewGovernance event.

setBaseFeeProvider

  function setBaseFeeProvider(
address _baseFeeProvider
) external

Sets the address used to pull the current network base fee.

Throws if the caller is not current governance.

Parameters

NameTypeDescription
_baseFeeProvideraddressThe network's baseFeeProvider address

_onlyAuthorized

  function _onlyAuthorized(
) internal

_onlyGovernance

  function _onlyGovernance(
) internal

Events

NewGovernance

  event NewGovernance(
)

NewProvider

  event NewProvider(
)

UpdatedMaxBaseFee

  event UpdatedMaxBaseFee(
)

UpdatedManualBaseFee

  event UpdatedManualBaseFee(
)

UpdatedAuthorization

  event UpdatedAuthorization(
)