dotgnu-pnet-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Dotgnu-pnet-commits] CVS: pnetlib/System/Net DnsPermission.cs,1.1,1.2


From: Rhys Weatherley <address@hidden>
Subject: [Dotgnu-pnet-commits] CVS: pnetlib/System/Net DnsPermission.cs,1.1,1.2
Date: Tue, 01 Apr 2003 00:25:31 -0500

Update of /cvsroot/dotgnu-pnet/pnetlib/System/Net
In directory subversions:/tmp/cvs-serv12611/System/Net

Modified Files:
        DnsPermission.cs 
Log Message:


Implement the missing functionality in "System.Net.DnsPermission".


Index: DnsPermission.cs
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnetlib/System/Net/DnsPermission.cs,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -r1.1 -r1.2
*** DnsPermission.cs    3 Jan 2003 13:52:40 -0000       1.1
--- DnsPermission.cs    1 Apr 2003 05:25:29 -0000       1.2
***************
*** 29,32 ****
--- 29,35 ----
  
  public class DnsPermission : CodeAccessPermission
+ #if !ECMA_COMPAT
+       , IUnrestrictedPermission
+ #endif
  {
  
***************
*** 58,65 ****
        }
  
!       [TODO]
!       //Once System XML is fully implemented
!       public override void FromXml(SecurityElement securityElement)
        {
        }
  
--- 61,84 ----
        }
  
!       public override void FromXml(SecurityElement esd)
        {
+               String value;
+               if(esd == null)
+               {
+                       throw new ArgumentNullException("esd");
+               }
+               if(esd.Attribute("version") != "1")
+               {
+                       throw new 
ArgumentException(S._("Arg_PermissionVersion"));
+               }
+               value = esd.Attribute("Unrestricted");
+               if(value != null && Boolean.Parse(value))
+               {
+                       restrictedState = false;
+               }
+               else
+               {
+                       restrictedState = true;
+               }
        }
  
***************
*** 123,131 ****
        }
  
-       [TODO]
-       // Once System XML is fully implemented
        public override SecurityElement ToXml()
        {
!               return null;
        }
  
--- 142,159 ----
        }
  
        public override SecurityElement ToXml()
        {
!               SecurityElement element;
!               element = new SecurityElement("IPermission");
!               element.AddAttribute
!                       ("class",
!                        SecurityElement.Escape(typeof(DnsPermission).
!                                                                       
AssemblyQualifiedName));
!               element.AddAttribute("version", "1");
!               if(!restrictedState)
!               {
!                       element.AddAttribute("Unrestricted", "true");
!               }
!               return element;
        }
  
***************
*** 153,156 ****
--- 181,192 ----
                return null;
        }
+ 
+ #if !ECMA_COMPAT
+       // Determine if this permission object is unrestricted.
+       public bool IsUnrestricted()
+       {
+               return !restrictedState;
+       }
+ #endif
  
  } // class DnsPermission





reply via email to

[Prev in Thread] Current Thread [Next in Thread]