2 // System.Security.Policy.NetCodeGroup
5 // Jackson Harper (Jackson@LatitudeGeo.com)
7 // (C) 2002 Jackson Harper, All rights reserved
12 namespace System.Security.Policy {
15 public sealed class NetCodeGroup : CodeGroup {
17 public NetCodeGroup (IMembershipCondition condition)
18 : base (condition, null) {}
20 // for PolicyLevel (to avoid validation duplication)
21 internal NetCodeGroup (SecurityElement e) : base (e) {}
27 public override string AttributeString {
31 public override string MergeLogic {
32 get { return "Union"; }
35 public override string PermissionSetName {
36 get { return "Same site Web."; }
43 public override CodeGroup Copy ()
45 NetCodeGroup copy = new NetCodeGroup (MembershipCondition);
47 copy.Description = Description;
48 copy.PolicyStatement = PolicyStatement;
50 foreach (CodeGroup child in Children) {
51 copy.AddChild (child.Copy ()); // deep copy
57 public override PolicyStatement Resolve (Evidence evidence)
60 throw new ArgumentNullException ();
62 throw new NotImplementedException ();
65 public override CodeGroup ResolveMatchingCodeGroups (Evidence evidence)
68 throw new ArgumentNullException ();
70 CodeGroup return_group = null;
71 if (MembershipCondition.Check (evidence)) {
72 return_group = Copy ();
74 foreach (CodeGroup child_group in Children) {
76 child_group.ResolveMatchingCodeGroups (evidence);
79 return_group.AddChild (matching);