Add release method to Stoppable. Create StoppableMock

This commit is contained in:
Arseniy Klempner
2016-10-25 10:15:37 -07:00
parent 5eea131f1e
commit f0ed649db3
2 changed files with 23 additions and 1 deletions

View File

@ -2,7 +2,7 @@ pragma solidity ^0.4.0;
/*
* Stoppable
* Abstract contract that allows children to implement an
* emergency stop mechanism.
* emergency stop mechanism.
*/
contract Stoppable {
address public curator;
@ -21,4 +21,9 @@ contract Stoppable {
stopped = true;
}
function release() external onlyInEmergency {
if (msg.sender != curator) throw;
stopped = false;
}
}

View File

@ -0,0 +1,17 @@
pragma solidity ^0.4.0;
import '../Stoppable.sol';
// mock class using Stoppable
contract StoppableMock is Stoppable {
bool public drasticMeasureTaken;
uint public count = 0;
function normalProcess() external stopInEmergency {
count++;
}
function drasticMeasure() external onlyInEmergency {
drasticMeasureTaken = true;
}
}