internal static ItemSecurity FromXml(Repository repository, XmlReader reader) { ItemSecurity itemSecurity = new ItemSecurity(); string elementName = reader.Name; itemSecurity.serverItem = reader.GetAttribute("item"); itemSecurity.writable = Convert.ToBoolean(reader.GetAttribute("writable")); List<AccessEntry> entries = new List<AccessEntry>(); while (reader.Read()) { if (reader.NodeType == XmlNodeType.EndElement && reader.Name == elementName) break; if (reader.NodeType == XmlNodeType.Element) { switch (reader.Name) { case "AccessEntry": entries.Add(AccessEntry.FromXml(repository, reader)); break; } } } itemSecurity.entries = entries.ToArray(); return itemSecurity; }
internal static ItemSecurity FromXml(Repository repository, XmlReader reader) { ItemSecurity itemSecurity = new ItemSecurity(); string elementName = reader.Name; itemSecurity.serverItem = reader.GetAttribute("item"); itemSecurity.writable = Convert.ToBoolean(reader.GetAttribute("writable")); List <AccessEntry> entries = new List <AccessEntry>(); while (reader.Read()) { if (reader.NodeType == XmlNodeType.EndElement && reader.Name == elementName) { break; } if (reader.NodeType == XmlNodeType.Element) { switch (reader.Name) { case "AccessEntry": entries.Add(AccessEntry.FromXml(repository, reader)); break; } } } itemSecurity.entries = entries.ToArray(); return(itemSecurity); }
public ItemSecurity[] QueryItemPermissions(string[] identityNames, string[] items, RecursionType recursion) { Message msg = new Message(GetWebRequest(new Uri(Url)), "QueryItemPermissions"); msg.Body.WriteStartElement("itemSpecs"); foreach (string item in items) { ItemSpec spec = new ItemSpec(item, recursion); spec.ToXml(msg.Body, "ItemSpec"); } msg.Body.WriteEndElement(); List <ItemSecurity> itemSecurities = new List <ItemSecurity>(); using (HttpWebResponse response = Invoke(msg)) { XmlReader results = msg.ResponseReader(response); while (results.Read()) { if (results.NodeType == XmlNodeType.Element && results.Name == "ItemSecurity") { itemSecurities.Add(ItemSecurity.FromXml(this, results)); } } } return(itemSecurities.ToArray()); }
public ItemSecurityPrinter(ItemSecurity itemSecurity) { m_itemSecurity = itemSecurity; }