private void UpdateAllRights(Grantee role) { for (int i = 0; i < this._map.Size(); i++) { Grantee grantee = this._map.Get(i); if (grantee.IsRole) { grantee.UpdateNestedRoles(role); } } for (int j = 0; j < this._map.Size(); j++) { Grantee grantee2 = this._map.Get(j); if (!grantee2.IsRole) { grantee2.UpdateAllRights(); } } }
public bool UpdateNestedRoles(Grantee role) { bool flag = false; if (role != this) { for (int i = 0; i < this.Roles.Size(); i++) { Grantee grantee = this.Roles.Get(i); flag |= grantee.UpdateNestedRoles(role); } } if (flag) { this.UpdateAllRights(); } if (!flag) { return(role == this); } return(true); }