constructor logic encapsulated to prevent programming errors
This commit is contained in:
parent
a6cf6f4d27
commit
84bb005997
|
@ -80,10 +80,7 @@ contract Identity is ERC725, ERC735 {
|
||||||
}
|
}
|
||||||
|
|
||||||
function Identity() public {
|
function Identity() public {
|
||||||
_addKey(bytes32(msg.sender), MANAGEMENT_KEY, 0);
|
_constructIdentity(msg.sender);
|
||||||
|
|
||||||
minimumApprovalsByKeyPurpose[MANAGEMENT_KEY] = 1;
|
|
||||||
minimumApprovalsByKeyPurpose[ACTION_KEY] = 1;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function ()
|
function ()
|
||||||
|
@ -418,6 +415,16 @@ contract Identity is ERC725, ERC735 {
|
||||||
recoveryContract = _recoveryContract;
|
recoveryContract = _recoveryContract;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function _constructIdentity(address _manager)
|
||||||
|
internal
|
||||||
|
{
|
||||||
|
require(minimumApprovalsByKeyPurpose[MANAGEMENT_KEY] == 0);
|
||||||
|
_addKey(bytes32(_manager), MANAGEMENT_KEY, 0);
|
||||||
|
|
||||||
|
minimumApprovalsByKeyPurpose[MANAGEMENT_KEY] = 1;
|
||||||
|
minimumApprovalsByKeyPurpose[ACTION_KEY] = 1;
|
||||||
|
}
|
||||||
|
|
||||||
function _execute(
|
function _execute(
|
||||||
address _to,
|
address _to,
|
||||||
uint256 _value,
|
uint256 _value,
|
||||||
|
@ -478,7 +485,7 @@ contract Identity is ERC725, ERC735 {
|
||||||
uint256 _purpose,
|
uint256 _purpose,
|
||||||
uint256 _type
|
uint256 _type
|
||||||
)
|
)
|
||||||
internal
|
private
|
||||||
{
|
{
|
||||||
bytes32 keyHash = keccak256(_key, _purpose);
|
bytes32 keyHash = keccak256(_key, _purpose);
|
||||||
|
|
||||||
|
|
|
@ -6,8 +6,6 @@ import "./Identity.sol";
|
||||||
contract IdentityKernel is InstanceStorage, Identity {
|
contract IdentityKernel is InstanceStorage, Identity {
|
||||||
|
|
||||||
function initIdentity(address _caller) external {
|
function initIdentity(address _caller) external {
|
||||||
require(minimumApprovalsByKeyPurpose[MANAGEMENT_KEY] == 0);
|
_constructIdentity(_caller);
|
||||||
_addKey(bytes32(_caller), MANAGEMENT_KEY, 0);
|
|
||||||
minimumApprovalsByKeyPurpose[MANAGEMENT_KEY] = 1;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue