public override void DoAction(bool onRemote, bool isFromMe) { if (onRemote && isFromMe) { return; } PermissionEvaluator.ResetPrivate(); }
internal static PermissionEvaluator Parse(string src) { var result = new PermissionEvaluator(); var sa = src.Trim().Split(new char[] { '#' }, StringSplitOptions.RemoveEmptyEntries); ParseInfo(sa[0].Trim(), result); ParseMembership(sa[1].Trim(), result); return(result); }
private static void ParseMembership(string src, PermissionEvaluator newInstance) { var sa = src.Trim().Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries); foreach (var s in sa) { var sb = s.Trim().Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries); int user = Int32.Parse(sb[0]); var groups = new List <int>(); for (int i = 1; i < sb.Length; i++) { groups.Add(Int32.Parse(sb[i])); } newInstance.membership.Add(user, groups); } }
private static void ParseInfo(string src, PermissionEvaluator newInstance) { var sa = src.Trim().Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries); foreach (var s in sa) { var permInfo = PermissionInfo.Parse(s); var parent = newInstance.GetParentInfo(permInfo.Path); if (parent != null) { parent.Children.Add(permInfo); } permInfo.Parent = parent; newInstance.permissionTable.Add(permInfo.Path, permInfo); } }