public void Add (AuthorizationRule rule)
{
- BaseAdd (rule);
+ BaseAdd (rule, false);
}
public void Clear ()
return new AuthorizationRule (elementName == "allow" ? AuthorizationRuleAction.Allow : AuthorizationRuleAction.Deny);
}
- [MonoTODO]
protected override ConfigurationElement CreateNewElement ()
{
return new AuthorizationRule (AuthorizationRuleAction.Allow);
return (AuthorizationRule) BaseGet (index);
}
- [MonoTODO]
protected override object GetElementKey (ConfigurationElement element)
{
- throw new NotImplementedException ();
+ AuthorizationRule rule = (AuthorizationRule)element;
+
+ return rule.Action.ToString();
}
public int IndexOf (AuthorizationRule rule)
public void Remove (AuthorizationRule rule)
{
- BaseRemove (rule);
+ BaseRemove (rule.Action.ToString());
}
public void RemoveAt (int index)
BaseRemoveAt (index);
}
- [MonoTODO]
public void Set (int index, AuthorizationRule rule)
{
- throw new NotImplementedException ();
+ if (BaseGet(index) != null)
+ BaseRemoveAt(index);
+ BaseAdd(index, rule);
}
- protected override ConfigurationElementCollectionType CollectionType {
+ public override ConfigurationElementCollectionType CollectionType {
get { return ConfigurationElementCollectionType.BasicMapAlternate; }
}
- [MonoTODO]
+ [MonoTODO ("is it okay to return a comma delimited string here?")]
protected override string ElementName {
get { return "allow,deny"; }
}
public AuthorizationRule this [int index] {
get { return Get (index); }
- set { if (BaseGet(index) != null) BaseRemoveAt(index); BaseAdd(index, value); }
+ set { Set (index, value); }
}
protected override ConfigurationPropertyCollection Properties {
get { return properties; }
}
+ protected override bool ThrowOnDuplicate {
+ get { return false; }
+ }
}
}