private IEnumerable<IAclRule> getRulesInternal(){ if (null == FileSystem) yield break; var serializer = new AclRuleXmlSerializer(); foreach(string file in FileSystem.ResolveAll(fileName)){ var text = FileSystem.Read(file); foreach (var s in serializer.Read(text)){ s.Evidence = "local("+Path.GetFileName(Path.GetDirectoryName(file))+")"; yield return s; } } }
public void Remove(IAclRule rule){ var olddata = FileSystem.Read(usrFileName); var serializer = new AclRuleXmlSerializer(); FileSystem.Write(usrFileName, serializer.Remove(olddata, rule)); }