private List <SetLocalPermissions.RightsWithAccessControlType <TRights> > GetRights <TRights>(XmlNode permissionNode, Dictionary <string, TRights> rightsDictionary) { TaskLogger.LogEnter(); List <SetLocalPermissions.RightsWithAccessControlType <TRights> > list = new List <SetLocalPermissions.RightsWithAccessControlType <TRights> >(); foreach (object obj in permissionNode.Attributes) { XmlAttribute permissionAttribute = (XmlAttribute)obj; SetLocalPermissions.RightsWithAccessControlType <TRights> rights = this.GetRights <TRights>(permissionAttribute, rightsDictionary); if (rights != null) { list.Add(rights); } } TaskLogger.LogExit(); return(list); }
private SetLocalPermissions.RightsWithAccessControlType <TRights> GetRights <TRights>(XmlAttribute permissionAttribute, Dictionary <string, TRights> rightsDictionary) { TaskLogger.LogEnter(); SetLocalPermissions.RightsWithAccessControlType <TRights> rightsWithAccessControlType = null; if (permissionAttribute.Name != "User" && permissionAttribute.Name != "Extended") { rightsWithAccessControlType = new SetLocalPermissions.RightsWithAccessControlType <TRights>(); rightsWithAccessControlType.Rights = rightsDictionary[permissionAttribute.Name.ToLower()]; if (string.Compare(permissionAttribute.Value, "yes", true) == 0) { rightsWithAccessControlType.AccessControlType = AccessControlType.Allow; } else { rightsWithAccessControlType.AccessControlType = AccessControlType.Deny; } } TaskLogger.LogExit(); return(rightsWithAccessControlType); }