Skip to main content

CoolerCallback

Git Source

Allows for debt issuers to execute logic when a loan is repaid, rolled, or defaulted.

The three callback functions must be implemented if isCoolerCallback() is set to true.

Constants​

factory​

CoolerFactory public immutable factory;

Functions​

constructor​

constructor(address coolerFactory_);

Parameters

NameTypeDescription
coolerFactory_address

isCoolerCallback​

Informs to Cooler that this contract can handle its callbacks.

function isCoolerCallback() external pure returns (bool);

Returns

NameTypeDescription
<none>bool

onRepay​

Callback function that handles repayments.

function onRepay(uint256 loanID_, uint256 principlePaid_, uint256 interestPaid_) external;

Parameters

NameTypeDescription
loanID_uint256
principlePaid_uint256
interestPaid_uint256

onDefault​

Callback function that handles defaults.

function onDefault(
uint256 loanID_,
uint256 principle,
uint256 interest,
uint256 collateral
) external;

Parameters

NameTypeDescription
loanID_uint256
principleuint256
interestuint256
collateraluint256

_onRepay​

Callback function that handles repayments. Override for custom logic.

function _onRepay(
uint256 loanID_,
uint256 principlePaid_,
uint256 interestPaid_
) internal virtual;

Parameters

NameTypeDescription
loanID_uint256
principlePaid_uint256
interestPaid_uint256

_onDefault​

Callback function that handles defaults.

function _onDefault(
uint256 loanID_,
uint256 principle_,
uint256 interestDue_,
uint256 collateral
) internal virtual;

Parameters

NameTypeDescription
loanID_uint256
principle_uint256
interestDue_uint256
collateraluint256

Errors​

OnlyFromFactory​

error OnlyFromFactory();