コード例 #1
0
 public MessageQueuePermission(MessageQueuePermissionEntry[] permissionAccessEntries)
 {
     if (permissionAccessEntries == null)
         throw new ArgumentNullException("permissionAccessEntries");
     else
         this.PermissionEntries.AddRange(permissionAccessEntries);
 }
 public void AddRange(MessageQueuePermissionEntry[] value)
 {
     if (value == null)
     {
         throw new ArgumentNullException("value");
     }
     else
     {
         for (int index = 0; index < value.Length; ++index)
             this.Add(value[index]);
     }
 }
 public void Remove(MessageQueuePermissionEntry value)
 {
     this.List.Remove((object)value);
 }
 public void Insert(int index, MessageQueuePermissionEntry value)
 {
     this.List.Insert(index, (object)value);
 }
 public int IndexOf(MessageQueuePermissionEntry value)
 {
     return this.List.IndexOf((object)value);
 }
 public void CopyTo(MessageQueuePermissionEntry[] array, int index)
 {
     this.List.CopyTo((Array)array, index);
 }
 public bool Contains(MessageQueuePermissionEntry value)
 {
     return this.List.Contains((object)value);
 }
 public int Add(MessageQueuePermissionEntry value)
 {
     return this.List.Add((object)value);
 }
コード例 #9
0
 public override void FromXml(SecurityElement securityElement)
 {
     this.PermissionEntries.Clear();
     string strA = securityElement.Attribute("Unrestricted");
     if (strA != null && string.Compare(strA, "true", true, CultureInfo.InvariantCulture) == 0)
         this.isUnrestricted = true;
     else if (securityElement.Children != null)
     {
         for (int index = 0; index < securityElement.Children.Count; ++index)
         {
             SecurityElement securityElement1 = (SecurityElement)securityElement.Children[index];
             string str1 = securityElement1.Attribute("access");
             int num = 0;
             if (str1 != null)
             {
                 string str2 = str1;
                 char[] chArray = new char[1]
                                      {
                                          '|'
                                      };
                 foreach (string str3 in str2.Split(chArray))
                 {
                     string str4 = str3.Trim();
                     if (Enum.IsDefined(typeof(MessageQueuePermissionAccess), (object)str4))
                         num |= (int)Enum.Parse(typeof(MessageQueuePermissionAccess), str4);
                 }
             }
             MessageQueuePermissionEntry queuePermissionEntry;
             if (securityElement1.Tag == "Path")
             {
                 string path = securityElement1.Attribute("value");
                 if (path == null)
                     throw new InvalidOperationException(Res.GetString("InvalidXmlFormat"));
                 else
                     queuePermissionEntry = new MessageQueuePermissionEntry((MessageQueuePermissionAccess)num, path);
             }
             else if (securityElement1.Tag == "Criteria")
             {
                 string label = securityElement1.Attribute("label");
                 string category = securityElement1.Attribute("category");
                 string machineName = securityElement1.Attribute("machine");
                 if (machineName == null && label == null && category == null)
                     throw new InvalidOperationException(Res.GetString("InvalidXmlFormat"));
                 else
                     queuePermissionEntry = new MessageQueuePermissionEntry((MessageQueuePermissionAccess)num, machineName, label, category);
             }
             else
                 throw new InvalidOperationException(Res.GetString("InvalidXmlFormat"));
             this.PermissionEntries.Add(queuePermissionEntry);
         }
     }
 }