2 // StrongNameIdentityPermission.cs: Strong Name Identity Permission
5 // Sebastien Pouliot (spouliot@motus.com)
7 // (C) 2002, 2003 Motus Technologies Inc. (http://www.motus.com)
12 namespace System.Security.Permissions {
15 public sealed class StrongNameIdentityPermission : CodeAccessPermission, IBuiltInPermission {
17 private StrongNamePublicKeyBlob publickey;
19 private Version version;
21 public StrongNameIdentityPermission (PermissionState state)
23 if (state == PermissionState.Unrestricted)
24 throw new ArgumentException ("state");
26 version = new Version (0, 0);
29 public StrongNameIdentityPermission (StrongNamePublicKeyBlob blob, string name, Version version)
32 throw new ArgumentNullException ("blob");
34 throw new ArgumentNullException ("name");
36 throw new ArgumentNullException ("version");
40 this.version = version;
43 ~StrongNameIdentityPermission ()
52 public StrongNamePublicKeyBlob PublicKey {
53 get { return publickey; }
56 throw new ArgumentNullException ("value");
61 public Version Version {
62 get { return version; }
63 set { version = value; }
66 public override IPermission Copy ()
68 return new StrongNameIdentityPermission (publickey, name, version);
72 public override void FromXml (SecurityElement e)
75 throw new ArgumentNullException ("e");
76 throw new NotImplementedException ();
80 public override IPermission Intersect (IPermission target)
82 throw new NotImplementedException ();
86 public override bool IsSubsetOf (IPermission target)
88 throw new NotImplementedException ();
92 public override SecurityElement ToXml ()
94 throw new NotImplementedException ();
98 public override IPermission Union (IPermission target)
100 throw new NotImplementedException ();
103 // IBuiltInPermission
104 int IBuiltInPermission.GetTokenIndex ()