2 // System.Security.Policy.Url.cs
5 // Duncan Mak (duncan@ximian.com)
7 // (C) 2003 Ximian, Inc (http://www.ximian.com)
11 using System.Globalization;
12 using System.Security.Permissions;
13 using System.Security.Policy;
15 namespace System.Security.Policy {
18 public sealed class Url: IIdentityPermissionFactory
21 SecurityElement element;
23 public Url (string name)
26 throw new ArgumentNullException (Locale.GetText ("name is null"));
29 element = new SecurityElement (
30 typeof (System.Security.Policy.Url).FullName);
32 element.AddAttribute ("version", "1");
33 element.AddChild (new SecurityElement ("Url", name));
36 private Url (string name, SecurityElement security_element)
39 element = security_element;
44 return new Url (origin_url, element);
48 public IPermission CreateIdentityPermission (Evidence evidence)
53 public override bool Equals (object o)
55 return (o is System.Security.Policy.Url && ((Url) o).Value == Value);
58 public override int GetHashCode ()
60 return origin_url.GetHashCode ();
63 public override string ToString ()
65 return element.ToString ();