private void SetAccess(AccessKind kind, string userId, bool allowed) { if (userId == null) { throw new ArgumentException("Cannot set access for an unsaved user or role."); } ICollection <string> target = null; switch (kind) { case AccessKind.Read: target = Readers; break; case AccessKind.Write: target = Writers; break; default: throw new NotImplementedException("Unknown AccessKind"); } if (allowed) { target.Add(userId); } else { target.Remove(userId); } }
private bool GetAccess(AccessKind kind, string userId) { if (userId == null) { throw new ArgumentException("Cannot get access for an unsaved user or role."); } switch (kind) { case AccessKind.Read: return readers.Contains(userId); case AccessKind.Write: return writers.Contains(userId); default: throw new NotImplementedException("Unknown AccessKind"); } }
/// <summary> /// アクセス修飾子 /// </summary> /// <param name="text">テキスト</param> public AccessModifier(string text) { if (text == "public") { Kind = AccessKind.Public; } else if (text == "protected") { Kind = AccessKind.Protected; } else if (text == "private") { Kind = AccessKind.Private; } }
private bool GetAccess(AccessKind kind, string userId) { if (userId == null) { throw new ArgumentException("Cannot get access for an unsaved user or role."); } switch (kind) { case AccessKind.Read: return(readers.Contains(userId)); case AccessKind.Write: return(writers.Contains(userId)); default: throw new NotImplementedException("Unknown AccessKind"); } }
private bool CanDo(AccessKind accessKind, params ProjectRoles[] roles) { if (roles == null) { return(false); } if (!roles.Any()) { return(false); } if (!_roles.ContainsKey(accessKind)) { return(false); } return(roles.Any(i => _roles[accessKind].Contains(i))); }
private void SetAccess(AccessKind kind, string userId, bool allowed) { if (userId == null) { throw new ArgumentException("Cannot set access for an unsaved user or role."); } ICollection<string> target = null; switch (kind) { case AccessKind.Read: target = readers; break; case AccessKind.Write: target = writers; break; default: throw new NotImplementedException("Unknown AccessKind"); } if (allowed) { target.Add(userId); } else { target.Remove(userId); } }