12345678910111213141516171819202122 |
- pragma solidity ^0.4.23;
- import "./Escrow.sol";
- /**
- * @title ConditionalEscrow
- * @dev Base abstract escrow to only allow withdrawal if a condition is met.
- */
- contract ConditionalEscrow is Escrow {
- /**
- * @dev Returns whether an address is allowed to withdraw their funds. To be
- * implemented by derived contracts.
- * @param _payee The destination address of the funds.
- */
- function withdrawalAllowed(address _payee) public view returns (bool);
- function withdraw(address _payee) public {
- require(withdrawalAllowed(_payee));
- super.withdraw(_payee);
- }
- }
|