Intended usage: This contract (and derived escrow contracts) should be a standalone contract, that only interacts with the contract that instantiated it. That way, it is guaranteed that all Ether will be handled according to the Escrow rules, and there is no need to check for payable functions or transfers in the inheritance tree. The contract that uses the escrow as its payment method should be its primary, and provide public methods redirecting to the escrow's deposit and withdraw.
event Deposited(address payee, uint256 weiAmount)
event Withdrawn(address payee, uint256 weiAmount)
function deposit(address payee) public payable
Stores the sent amount as credit to be withdrawn.
payee- The destination address of the funds.
function depositsOf(address payee) public view returns (uint256)
function withdraw(address payee) public
Withdraw accumulated balance for a payee.
payee- The address whose funds will be withdrawn and transferred to.