diff --git a/contracts/nameservice/NameService.sol b/contracts/nameservice/NameService.sol index ac08c19..43534da 100644 --- a/contracts/nameservice/NameService.sol +++ b/contracts/nameservice/NameService.sol @@ -2,6 +2,8 @@ pragma solidity ^0.8.0; contract Git3NameService { + event RegisterHub(string name, address hub); + mapping(string => address) public nameHub; mapping(address => string) public hubName; mapping(string => address) public nameOwner; @@ -22,6 +24,7 @@ contract Git3NameService { hubName[hub] = name; nameOwner[name] = msg.sender; nameList.push(name); + emit RegisterHub(name, hub); } function nameListLength() public view returns (uint256) { @@ -34,6 +37,7 @@ contract Git3NameService { ) public onlyHubOwner(name) { nameHub[name] = hub; hubName[hub] = name; + emit RegisterHub(name, hub); } function transferNameOwner( diff --git a/contracts/v3/Hubv3.sol b/contracts/v3/Hubv3.sol index de35053..daec6a4 100644 --- a/contracts/v3/Hubv3.sol +++ b/contracts/v3/Hubv3.sol @@ -12,6 +12,9 @@ contract Hubv3 is AccessControlEnumerable, Initializable { using EnumerableSet for EnumerableSet.AddressSet; using Repolib for Repolib.BranchInfo; + event RepoCreated(bytes repoName, address owner); + event SetRepoRef(bytes repoName, bytes branchPath, bytes20 refHash); + // Hub Info // bytes32 public constant CREATOR = bytes32(uint256(1)); bytes32 public constant MANAGER = bytes32(uint256(1)); @@ -88,10 +91,13 @@ contract Hubv3 is AccessControlEnumerable, Initializable { return false; } - function getMembersByRole(bytes32 role) public view returns(address[] memory members){ + function getMembersByRole( + bytes32 role + ) public view returns(address[] memory members){ + uint256 count = getRoleMemberCount(role); members = new address[](count); - for (uint i = 0; i < count; i++){ + for (uint i = 0; i < count; i++) { members[i] = getRoleMember(role, i); } } @@ -126,11 +132,8 @@ contract Hubv3 is AccessControlEnumerable, Initializable { // ===== repository operator functions====== - function repoList() public view returns(string[] memory rn){ - rn = new string[](repoNames.length); - for (uint i = 0; i