Git Source

Inherits: HandlerBase, HandlerUtils, ICommonApplicationHandlerEvents, IHandlerDiamondErrors

Functions

initialize

Initializer params

function initialize(address _ruleProcessorProxyAddress, address _appManagerAddress, address _assetAddress)
    external
    onlyOwner;

Parameters

NameTypeDescription
_ruleProcessorProxyAddressaddressof the protocol’s Rule Processor contract.
_appManagerAddressaddressaddress of the application AppManager.
_assetAddressaddressaddress of the controlling asset.

checkAllRules

This function is called without passing in an action type.

This function is the one called from the contract that implements this handler. It’s the entry point.

function checkAllRules(
    uint256 _balanceFrom,
    uint256 _balanceTo,
    address _from,
    address _to,
    address _sender,
    uint256 _amount
) external onlyOwner returns (bool);

Parameters

NameTypeDescription
_balanceFromuint256token balance of sender address
_balanceTouint256token balance of recipient address
_fromaddresssender address
_toaddressrecipient address
_senderaddressthe address triggering the contract action
_amountuint256number of tokens transferred

Returns

NameTypeDescription
<none>booltrue if all checks pass

checkAllRules

This function is the one called from the contract that implements this handler. It’s the entry point.

function checkAllRules(
    uint256 _balanceFrom,
    uint256 _balanceTo,
    address _from,
    address _to,
    address _sender,
    uint256 _amount,
    ActionTypes _action
) external onlyOwner returns (bool);

Parameters

NameTypeDescription
_balanceFromuint256token balance of sender address
_balanceTouint256token balance of recipient address
_fromaddresssender address
_toaddressrecipient address
_senderaddressthe address triggering the contract action
_amountuint256number of tokens transferred
_actionActionTypesAction Type

Returns

NameTypeDescription
<none>booltrue if all checks pass

_checkAllRules

This function contains the logic for checking all rules. It performs all the checks for the external functions.

function _checkAllRules(
    uint256 balanceFrom,
    uint256 balanceTo,
    address _from,
    address _to,
    address _sender,
    uint256 _amount,
    ActionTypes _action
) internal returns (bool);

Parameters

NameTypeDescription
balanceFromuint256token balance of sender address
balanceTouint256token balance of recipient address
_fromaddresssender address
_toaddressrecipient address
_senderaddressthe address triggering the contract action
_amountuint256number of tokens transferred
_actionActionTypesAction Type

Returns

NameTypeDescription
<none>booltrue if all checks pass

getAppManagerAddress

standard rules do not apply when either to or from is a treasury account

This function returns the configured application manager’s address.

function getAppManagerAddress() external view returns (address);

Returns

NameTypeDescription
<none>addressappManagerAddress address of the connected application manager

getRuleProcessorAddress

This function returns the configured rule processor address.

function getRuleProcessorAddress() external view returns (address);

Returns

NameTypeDescription
<none>addressruleProcessorAddress address of the connected Rule Processor

getAssetAddress

This function returns the configured token address.

function getAssetAddress() external view returns (address);

Returns

NameTypeDescription
<none>addressassetAddress address of the connected token