* roottypes.cs: Rename from tree.cs.
[mono.git] / mcs / class / corlib / System / AppDomainManager.cs
index 0290a1f9f706ea91b00d0f40d2df77a09e9770a1..f09ea94d0b1f26404900bc5bc3f466059d07b929 100644 (file)
@@ -4,7 +4,7 @@
 // Author:
 //     Sebastien Pouliot  <sebastien@ximian.com>
 //
-// Copyright (C) 2004 Novell, Inc (http://www.novell.com)
+// Copyright (C) 2004-2005 Novell, Inc (http://www.novell.com)
 //
 // Permission is hereby granted, free of charge, to any person obtaining
 // a copy of this software and associated documentation files (the
 #if NET_2_0
 
 using System.Reflection;
+using System.Runtime.Hosting;
+using System.Runtime.InteropServices;
 using System.Security;
+using System.Security.Permissions;
 using System.Security.Policy;
 using System.Threading;
 
 namespace System {
 
+       [ComVisible (true)]
+       [SecurityPermission (SecurityAction.LinkDemand, Infrastructure = true)]
+       [SecurityPermission (SecurityAction.InheritanceDemand, Infrastructure = true)]
        public class AppDomainManager : MarshalByRefObject {
 
                private ApplicationActivator _activator;
                private Assembly _entry;
                private HostExecutionContextManager _host_context;
                private HostSecurityManager _host_security;
-               private DomainManagerInitializationFlags _flags;
+               private AppDomainManagerInitializationOptions _flags;
 
                public AppDomainManager ()
                {
-                       _flags = DomainManagerInitializationFlags.None;
+                       _flags = AppDomainManagerInitializationOptions.None;
                }
 
                public virtual ApplicationActivator ApplicationActivator {
@@ -61,16 +67,10 @@ namespace System {
                }
 
                public virtual HostSecurityManager HostSecurityManager {
-                       get {
-                               if (_host_security == null) {
-                                       // use default
-                                       _host_security = new HostSecurityManager ();
-                               }
-                               return _host_security;
-                       }
+                       get { return _host_security; }
                }
 
-               public DomainManagerInitializationFlags InitializationFlags {
+               public AppDomainManagerInitializationOptions InitializationFlags {
                        get { return _flags; }
                        set { _flags = value; } 
                }
@@ -83,19 +83,12 @@ namespace System {
                        AppDomain ad = CreateDomainHelper (friendlyName, securityInfo, appDomainInfo);
 
                        // supply app domain policy ?
-                       if ((HostSecurityManager.Flags & HostSecurityManagerFlags.HostPolicyLevel) == HostSecurityManagerFlags.HostPolicyLevel) {
+                       if ((HostSecurityManager.Flags & HostSecurityManagerOptions.HostPolicyLevel) == HostSecurityManagerOptions.HostPolicyLevel) {
                                PolicyLevel pl = HostSecurityManager.DomainPolicy;
                                if (pl != null) {
                                        ad.SetAppDomainPolicy (pl);
                                }
                        }
-                       // supply refused set ?
-                       if ((HostSecurityManager.Flags & HostSecurityManagerFlags.HostRefusedSet) == HostSecurityManagerFlags.HostRefusedSet) {
-                               PermissionSet ps = HostSecurityManager.RefusedSet;
-                               if (ps != null) {
-//                                     ad._refused = new PermissionSet (ps); // copy
-                               }
-                       }
 
                        return ad;
                }