2002-08-08 Tim Coleman <tim@timcoleman.com>
authorTim Coleman <tim@mono-cvs.ximian.com>
Thu, 8 Aug 2002 17:47:46 +0000 (17:47 -0000)
committerTim Coleman <tim@mono-cvs.ximian.com>
Thu, 8 Aug 2002 17:47:46 +0000 (17:47 -0000)
        * ISecurityCallContext.cs:
        * ISecurityCallersColl.cs:
        * ISecurityIdentityColl.cs:
        * ISharedProperty.cs:
        * ISharedPropertyGroup.cs:
        * RegistrationHelperTx.cs:
        * ResourcePool.cs:
        * SecureMethodAttribute.cs:
        * SecurityCallContext.cs:
        * SecurityCallers.cs:
        * SecurityIdentity.cs:
        * SecurityRoleAttribute.cs:
        * ServicedComponentException.cs:
        * SharedProperty.cs:
        * SharedPropertyGroup.cs:
        * SharedPropertyGroupManager.cs:
        * SynchronizationAttribute.cs:
        * SynchronizationOption.cs:
        * TransactionAttribute.cs:
        * TransactionIsolationLevel.cs:
                New files added.
        * ContextUtil.cs:
                New internal constructor added, methods added.
        * IRemoteDispatch.cs:
                AutoComplete attributes added to methods
        * TODOAttribute.cs:
                Namespace adjusted.

svn path=/trunk/mcs/; revision=6543

23 files changed:
mcs/class/System.EnterpriseServices/System.EnterpriseServices/ChangeLog
mcs/class/System.EnterpriseServices/System.EnterpriseServices/ContextUtil.cs
mcs/class/System.EnterpriseServices/System.EnterpriseServices/IRemoteDispatch.cs
mcs/class/System.EnterpriseServices/System.EnterpriseServices/ISecurityCallContext.cs [new file with mode: 0644]
mcs/class/System.EnterpriseServices/System.EnterpriseServices/ISecurityCallersColl.cs [new file with mode: 0644]
mcs/class/System.EnterpriseServices/System.EnterpriseServices/ISecurityIdentityColl.cs [new file with mode: 0644]
mcs/class/System.EnterpriseServices/System.EnterpriseServices/ISharedProperty.cs [new file with mode: 0644]
mcs/class/System.EnterpriseServices/System.EnterpriseServices/ISharedPropertyGroup.cs [new file with mode: 0644]
mcs/class/System.EnterpriseServices/System.EnterpriseServices/ResourcePool.cs [new file with mode: 0644]
mcs/class/System.EnterpriseServices/System.EnterpriseServices/SecureMethodAttribute.cs [new file with mode: 0644]
mcs/class/System.EnterpriseServices/System.EnterpriseServices/SecurityCallContext.cs [new file with mode: 0644]
mcs/class/System.EnterpriseServices/System.EnterpriseServices/SecurityCallers.cs [new file with mode: 0644]
mcs/class/System.EnterpriseServices/System.EnterpriseServices/SecurityIdentity.cs [new file with mode: 0644]
mcs/class/System.EnterpriseServices/System.EnterpriseServices/SecurityRoleAttribute.cs [new file with mode: 0644]
mcs/class/System.EnterpriseServices/System.EnterpriseServices/ServicedComponentException.cs [new file with mode: 0644]
mcs/class/System.EnterpriseServices/System.EnterpriseServices/SharedProperty.cs [new file with mode: 0644]
mcs/class/System.EnterpriseServices/System.EnterpriseServices/SharedPropertyGroup.cs [new file with mode: 0644]
mcs/class/System.EnterpriseServices/System.EnterpriseServices/SharedPropertyGroupManager.cs [new file with mode: 0644]
mcs/class/System.EnterpriseServices/System.EnterpriseServices/SynchronizationAttribute.cs [new file with mode: 0644]
mcs/class/System.EnterpriseServices/System.EnterpriseServices/SynchronizationOption.cs [new file with mode: 0644]
mcs/class/System.EnterpriseServices/System.EnterpriseServices/TODOAttribute.cs
mcs/class/System.EnterpriseServices/System.EnterpriseServices/TransactionAttribute.cs [new file with mode: 0644]
mcs/class/System.EnterpriseServices/System.EnterpriseServices/TransactionIsolationLevel.cs [new file with mode: 0644]

index 43aeb688484d76ca00b2924e6e24215fd2f318d2..9b5c6b9119aa1cdacec03f6d8ec77c3a20d29e3d 100644 (file)
@@ -1,3 +1,33 @@
+2002-08-08  Tim Coleman <tim@timcoleman.com>
+        * ISecurityCallContext.cs:
+        * ISecurityCallersColl.cs:
+        * ISecurityIdentityColl.cs:
+        * ISharedProperty.cs:
+        * ISharedPropertyGroup.cs:
+        * RegistrationHelperTx.cs:
+        * ResourcePool.cs:
+        * SecureMethodAttribute.cs:
+        * SecurityCallContext.cs:
+        * SecurityCallers.cs:
+        * SecurityIdentity.cs:
+        * SecurityRoleAttribute.cs:
+        * ServicedComponentException.cs:
+        * SharedProperty.cs:
+        * SharedPropertyGroup.cs:
+        * SharedPropertyGroupManager.cs:
+        * SynchronizationAttribute.cs:
+        * SynchronizationOption.cs:
+        * TransactionAttribute.cs:
+        * TransactionIsolationLevel.cs:
+                New files added.
+        * ContextUtil.cs:
+                New internal constructor added, methods added.
+        * IRemoteDispatch.cs:
+                AutoComplete attributes added to methods
+        * TODOAttribute.cs:
+                Namespace adjusted.
+
+
 2002-08-07  Tim Coleman <tim@timcoleman.com>
        * RegistrationErrorInfo.cs:
        * RegistrationException.cs:
index 082bfab0c5bc176a274deac1f9e6ef9709154d43..70136b421f4fc12c7a0f8643b041fd0f33db1906 100644 (file)
@@ -19,6 +19,14 @@ namespace System.EnterpriseServices {
 \r
                #endregion // Fields\r
 \r
+               #region Constructors\r
+\r
+               internal ContextUtil ()\r
+               {\r
+               }\r
+\r
+               #endregion // Constructors\r
+\r
                #region Properties\r
 \r
                public static Guid ActivityId {\r
@@ -78,5 +86,45 @@ namespace System.EnterpriseServices {
                }\r
 \r
                #endregion // Properties\r
+\r
+               #region Methods\r
+\r
+               [MonoTODO]\r
+               public static void DisableCommit ()\r
+               {\r
+                       throw new NotImplementedException ();\r
+               }\r
+\r
+               [MonoTODO]\r
+               public static void EnableCommit ()\r
+               {\r
+                       throw new NotImplementedException ();\r
+               }\r
+\r
+               [MonoTODO]\r
+               public static object GetNamedProperty ()\r
+               {\r
+                       throw new NotImplementedException ();\r
+               }\r
+\r
+               [MonoTODO]\r
+               public static bool IsCallerInRole ()\r
+               {\r
+                       throw new NotImplementedException ();\r
+               }\r
+\r
+               [MonoTODO]\r
+               public static void SetAbort ()\r
+               {\r
+                       throw new NotImplementedException ();\r
+               }\r
+\r
+               [MonoTODO]\r
+               public static void SetComplete ()\r
+               {\r
+                       throw new NotImplementedException ();\r
+               }\r
+\r
+               #endregion // Methods\r
        }\r
 }\r
index 72c2403ad5b33f68fb7e1a25672f4e8c388273d3..663e8747c79267ab75716293195fbcaee019b38c 100644 (file)
@@ -16,7 +16,10 @@ namespace System.EnterpriseServices {
 \r
                #region Methods\r
 \r
+               [AutoComplete]\r
                string RemoteDispatchAutoDone (string s);\r
+\r
+               [AutoComplete]\r
                string RemoteDispatchNotAutoDone (string s);\r
 \r
                #endregion // Methods\r
diff --git a/mcs/class/System.EnterpriseServices/System.EnterpriseServices/ISecurityCallContext.cs b/mcs/class/System.EnterpriseServices/System.EnterpriseServices/ISecurityCallContext.cs
new file mode 100644 (file)
index 0000000..0b5a419
--- /dev/null
@@ -0,0 +1,34 @@
+// \r
+// System.EnterpriseServices.ISecurityCallContext.cs\r
+//\r
+// Author:\r
+//   Tim Coleman (tim@timcoleman.com)\r
+//\r
+// Copyright (C) Tim Coleman, 2002\r
+//\r
+\r
+using System;\r
+using System.Collections;\r
+\r
+namespace System.EnterpriseServices {\r
+       internal interface ISecurityCallContext {\r
+\r
+               #region Properties\r
+\r
+               int Count {\r
+                       get;\r
+               }\r
+\r
+               #endregion\r
+\r
+               #region Methods\r
+\r
+               void GetEnumerator (ref IEnumerator enumerator);\r
+               object GetItem (string user);\r
+               bool IsCallerInRole (string role);\r
+               bool IsSecurityEnabled ();\r
+               bool IsUserInRole (ref object user, string role);\r
+\r
+               #endregion\r
+       }\r
+}\r
diff --git a/mcs/class/System.EnterpriseServices/System.EnterpriseServices/ISecurityCallersColl.cs b/mcs/class/System.EnterpriseServices/System.EnterpriseServices/ISecurityCallersColl.cs
new file mode 100644 (file)
index 0000000..abea342
--- /dev/null
@@ -0,0 +1,31 @@
+// \r
+// System.EnterpriseServices.ISecurityCallersColl.cs\r
+//\r
+// Author:\r
+//   Tim Coleman (tim@timcoleman.com)\r
+//\r
+// Copyright (C) Tim Coleman, 2002\r
+//\r
+\r
+using System;\r
+using System.Collections;\r
+\r
+namespace System.EnterpriseServices {\r
+       internal interface ISecurityCallersColl {\r
+\r
+               #region Properties\r
+\r
+               int Count {\r
+                       get;\r
+               }\r
+\r
+               #endregion\r
+\r
+               #region Methods\r
+\r
+               void GetEnumerator (out IEnumerator enumerator);\r
+               ISecurityIdentityColl GetItem (int idx);\r
+\r
+               #endregion // Methods\r
+       }\r
+}\r
diff --git a/mcs/class/System.EnterpriseServices/System.EnterpriseServices/ISecurityIdentityColl.cs b/mcs/class/System.EnterpriseServices/System.EnterpriseServices/ISecurityIdentityColl.cs
new file mode 100644 (file)
index 0000000..09b5974
--- /dev/null
@@ -0,0 +1,31 @@
+// \r
+// System.EnterpriseServices.ISecurityIdentityColl.cs\r
+//\r
+// Author:\r
+//   Tim Coleman (tim@timcoleman.com)\r
+//\r
+// Copyright (C) Tim Coleman, 2002\r
+//\r
+\r
+using System;\r
+using System.Collections;\r
+\r
+namespace System.EnterpriseServices {\r
+       internal interface ISecurityIdentityColl {\r
+\r
+               #region Properties\r
+\r
+               int Count {\r
+                       get;\r
+               }\r
+\r
+               #endregion // Properties\r
+\r
+               #region Methods\r
+\r
+               void GetEnumerator (out IEnumerator enumerator);\r
+               SecurityIdentity GetItem (int idx);\r
+\r
+               #endregion // Methods\r
+       }\r
+}\r
diff --git a/mcs/class/System.EnterpriseServices/System.EnterpriseServices/ISharedProperty.cs b/mcs/class/System.EnterpriseServices/System.EnterpriseServices/ISharedProperty.cs
new file mode 100644 (file)
index 0000000..ba5d3f0
--- /dev/null
@@ -0,0 +1,24 @@
+// \r
+// System.EnterpriseServices.SharedProperty.cs\r
+//\r
+// Author:\r
+//   Tim Coleman (tim@timcoleman.com)\r
+//\r
+// Copyright (C) Tim Coleman, 2002\r
+//\r
+\r
+using System;\r
+\r
+namespace System.EnterpriseServices {\r
+       internal interface ISharedProperty {\r
+\r
+               #region Properties\r
+\r
+               object Value {\r
+                       get;\r
+                       set;\r
+               }\r
+\r
+               #endregion\r
+       }\r
+}\r
diff --git a/mcs/class/System.EnterpriseServices/System.EnterpriseServices/ISharedPropertyGroup.cs b/mcs/class/System.EnterpriseServices/System.EnterpriseServices/ISharedPropertyGroup.cs
new file mode 100644 (file)
index 0000000..ab8d4e4
--- /dev/null
@@ -0,0 +1,24 @@
+// \r
+// System.EnterpriseServices.ISharedPropertyGroup.cs\r
+//\r
+// Author:\r
+//   Tim Coleman (tim@timcoleman.com)\r
+//\r
+// Copyright (C) Tim Coleman, 2002\r
+//\r
+\r
+using System;\r
+\r
+namespace System.EnterpriseServices {\r
+       internal interface ISharedPropertyGroup {\r
+\r
+               #region Methods \r
+               \r
+               ISharedProperty CreateProperty (string name, out bool fExists);\r
+               ISharedProperty CreatePropertyByPosition (int position, out bool fExists);\r
+               ISharedProperty Property (string name);\r
+               ISharedProperty PropertyByPosition (int position);\r
+\r
+               #endregion // Methods\r
+       }\r
+}\r
diff --git a/mcs/class/System.EnterpriseServices/System.EnterpriseServices/ResourcePool.cs b/mcs/class/System.EnterpriseServices/System.EnterpriseServices/ResourcePool.cs
new file mode 100644 (file)
index 0000000..63e9666
--- /dev/null
@@ -0,0 +1,54 @@
+// \r
+// System.EnterpriseServices.ResourcePool.cs\r
+//\r
+// Author:\r
+//   Tim Coleman (tim@timcoleman.com)\r
+//\r
+// Copyright (C) Tim Coleman, 2002\r
+//\r
+\r
+using System;\r
+using System.Runtime.InteropServices;\r
+\r
+namespace System.EnterpriseServices {\r
+       public sealed class ResourcePool {\r
+\r
+               #region Fields\r
+\r
+               ResourcePool.TransactionEndDelegate cb;\r
+\r
+               #endregion // Fields\r
+\r
+               #region Constructors\r
+\r
+               [MonoTODO]\r
+               public ResourcePool (ResourcePool.TransactionEndDelegate cb)\r
+               {\r
+                       this.cb = cb;\r
+               }\r
+\r
+               #endregion // Constructors\r
+\r
+               #region Methods\r
+\r
+               [MonoTODO]\r
+               public object GetResource ()\r
+               {\r
+                       throw new NotImplementedException ();\r
+               }\r
+\r
+               [MonoTODO]\r
+               public bool PutResource (object resource)\r
+               {\r
+                       throw new NotImplementedException ();\r
+               }\r
+\r
+               #endregion // Methods\r
+\r
+               #region Delegates\r
+\r
+               public delegate void TransactionEndDelegate (object resource);\r
+\r
+               #endregion\r
+       }\r
+}\r
diff --git a/mcs/class/System.EnterpriseServices/System.EnterpriseServices/SecureMethodAttribute.cs b/mcs/class/System.EnterpriseServices/System.EnterpriseServices/SecureMethodAttribute.cs
new file mode 100644 (file)
index 0000000..5d27bd1
--- /dev/null
@@ -0,0 +1,24 @@
+// \r
+// System.EnterpriseServices.SecureMethodAttribute.cs\r
+//\r
+// Author:\r
+//   Tim Coleman (tim@timcoleman.com)\r
+//\r
+// Copyright (C) Tim Coleman, 2002\r
+//\r
+\r
+using System;\r
+\r
+namespace System.EnterpriseServices {\r
+       [AttributeUsage (AttributeTargets.Assembly | AttributeTargets.Class | AttributeTargets.Method)]\r
+       public sealed class SecureMethodAttribute : Attribute {\r
+\r
+               #region Constructors\r
+\r
+               public SecureMethodAttribute ()\r
+               {\r
+               }\r
+\r
+               #endregion // Constructors\r
+       }\r
+}\r
diff --git a/mcs/class/System.EnterpriseServices/System.EnterpriseServices/SecurityCallContext.cs b/mcs/class/System.EnterpriseServices/System.EnterpriseServices/SecurityCallContext.cs
new file mode 100644 (file)
index 0000000..10d116a
--- /dev/null
@@ -0,0 +1,86 @@
+// \r
+// System.EnterpriseServices.SecurityCallContext.cs\r
+//\r
+// Author:\r
+//   Tim Coleman (tim@timcoleman.com)\r
+//\r
+// Copyright (C) Tim Coleman, 2002\r
+//\r
+\r
+using System;\r
+\r
+namespace System.EnterpriseServices {\r
+       public sealed class SecurityCallContext {\r
+\r
+               #region Fields\r
+\r
+               #endregion // Fields\r
+\r
+               #region Constructors\r
+\r
+               internal SecurityCallContext ()\r
+               {\r
+               }\r
+\r
+               internal SecurityCallContext (ISecurityCallContext context)\r
+               {\r
+               }\r
+\r
+               #endregion // Constructors\r
+\r
+               #region Properties\r
+\r
+               public SecurityCallers Callers {\r
+                       [MonoTODO]\r
+                       get { throw new NotImplementedException (); }\r
+               }\r
+\r
+               public static SecurityCallContext CurrentCall {\r
+                       [MonoTODO]\r
+                       get { throw new NotImplementedException (); }\r
+               }\r
+\r
+               public SecurityIdentity DirectCaller {\r
+                       [MonoTODO]\r
+                       get { throw new NotImplementedException (); }\r
+               }\r
+\r
+               public bool IsSecurityEnabled {\r
+                       [MonoTODO]\r
+                       get { throw new NotImplementedException (); }\r
+               }\r
+\r
+               public int MinAuthenticationLevel {\r
+                       [MonoTODO]\r
+                       get { throw new NotImplementedException (); }\r
+               }\r
+\r
+               public int NumCallers {\r
+                       [MonoTODO]\r
+                       get { throw new NotImplementedException (); }\r
+               }\r
+\r
+               public SecurityIdentity OriginalCaller {\r
+                       [MonoTODO]\r
+                       get { throw new NotImplementedException (); }\r
+               }\r
+\r
+               #endregion // Properties\r
+\r
+               #region Methods\r
+\r
+               [MonoTODO]\r
+               public bool IsCallerInRole (string role)\r
+               {\r
+                       throw new NotImplementedException ();\r
+               }\r
+\r
+               [MonoTODO]\r
+               public bool IsUserInRole (string user, string role)\r
+               {\r
+                       throw new NotImplementedException ();\r
+               }\r
+\r
+               #endregion\r
+       }\r
+}\r
diff --git a/mcs/class/System.EnterpriseServices/System.EnterpriseServices/SecurityCallers.cs b/mcs/class/System.EnterpriseServices/System.EnterpriseServices/SecurityCallers.cs
new file mode 100644 (file)
index 0000000..ba6f8c7
--- /dev/null
@@ -0,0 +1,52 @@
+// \r
+// System.EnterpriseServices.SecurityCallers.cs\r
+//\r
+// Author:\r
+//   Tim Coleman (tim@timcoleman.com)\r
+//\r
+// Copyright (C) Tim Coleman, 2002\r
+//\r
+\r
+using System;\r
+using System.Collections;\r
+\r
+namespace System.EnterpriseServices {\r
+       public sealed class SecurityCallers : IEnumerable {\r
+\r
+               #region Constructors\r
+\r
+               internal SecurityCallers ()\r
+               {\r
+               }\r
+\r
+               internal SecurityCallers (ISecurityCallersColl collection)\r
+               {\r
+               }\r
+\r
+               #endregion // Constructors\r
+\r
+               #region Properties\r
+\r
+               public int Count {\r
+                       [MonoTODO]\r
+                       get { throw new NotImplementedException (); }\r
+               }\r
+\r
+               public SecurityIdentity this [int idx] {\r
+                       [MonoTODO]\r
+                       get { throw new NotImplementedException (); }\r
+               }\r
+\r
+               #endregion // Properties\r
+\r
+               #region Methods\r
+\r
+               [MonoTODO]\r
+               public IEnumerator GetEnumerator ()\r
+               {\r
+                       throw new NotImplementedException ();\r
+               }\r
+\r
+               #endregion\r
+       }\r
+}\r
diff --git a/mcs/class/System.EnterpriseServices/System.EnterpriseServices/SecurityIdentity.cs b/mcs/class/System.EnterpriseServices/System.EnterpriseServices/SecurityIdentity.cs
new file mode 100644 (file)
index 0000000..81fab4a
--- /dev/null
@@ -0,0 +1,54 @@
+// \r
+// System.EnterpriseServices.SecurityIdentity.cs\r
+//\r
+// Author:\r
+//   Tim Coleman (tim@timcoleman.com)\r
+//\r
+// Copyright (C) Tim Coleman, 2002\r
+//\r
+\r
+using System;\r
+using System.Collections;\r
+\r
+namespace System.EnterpriseServices {\r
+       public sealed class SecurityIdentity {\r
+\r
+               #region Constructors\r
+\r
+               [MonoTODO]\r
+               internal SecurityIdentity ()\r
+               {\r
+               }\r
+\r
+               [MonoTODO]\r
+               internal SecurityIdentity (ISecurityIdentityColl collection)\r
+               {\r
+               }\r
+\r
+               #endregion // Constructors\r
+\r
+               #region Properties\r
+\r
+               public string AccountName {\r
+                       [MonoTODO]\r
+                       get { throw new NotImplementedException (); }\r
+               }\r
+\r
+               public AuthenticationOption AuthenticationLevel {\r
+                       [MonoTODO]\r
+                       get { throw new NotImplementedException (); }\r
+               }\r
+\r
+               public int AuthenticationService {\r
+                       [MonoTODO]\r
+                       get { throw new NotImplementedException (); }\r
+               }\r
+\r
+               public ImpersonationLevelOption ImpersonationLevel {\r
+                       [MonoTODO]\r
+                       get { throw new NotImplementedException (); }\r
+               }\r
+\r
+               #endregion // Properties\r
+       }\r
+}\r
diff --git a/mcs/class/System.EnterpriseServices/System.EnterpriseServices/SecurityRoleAttribute.cs b/mcs/class/System.EnterpriseServices/System.EnterpriseServices/SecurityRoleAttribute.cs
new file mode 100644 (file)
index 0000000..4a28fd0
--- /dev/null
@@ -0,0 +1,59 @@
+// \r
+// System.EnterpriseServices.SecurityRoleAttribute.cs\r
+//\r
+// Author:\r
+//   Tim Coleman (tim@timcoleman.com)\r
+//\r
+// Copyright (C) Tim Coleman, 2002\r
+//\r
+\r
+using System;\r
+\r
+namespace System.EnterpriseServices {\r
+       [AttributeUsage (AttributeTargets.Assembly | AttributeTargets.Class | AttributeTargets.Method | AttributeTargets.Interface)]\r
+       public sealed class SecurityRoleAttribute : Attribute {\r
+\r
+               #region Fields\r
+\r
+               string description;\r
+               bool everyone;\r
+               string role;\r
+\r
+               #endregion // Fields\r
+\r
+               #region Constructors\r
+\r
+               public SecurityRoleAttribute (string role)\r
+                       : this (role, false)\r
+               {\r
+               }\r
+\r
+               public SecurityRoleAttribute (string role, bool everyone)\r
+               {\r
+                       this.description = String.Empty;\r
+                       this.everyone = everyone;\r
+                       this.role = role;\r
+               }\r
+\r
+               #endregion // Constructors\r
+\r
+               #region Properties\r
+\r
+               public string Description {\r
+                       get { return description; }\r
+                       set { description = value; }\r
+               }\r
+\r
+               public string Role {\r
+                       get { return role; }\r
+                       set { role = value; }\r
+               }\r
+\r
+               public bool SetEveryoneAccess {\r
+                       get { return everyone; }\r
+                       set { everyone = value; }\r
+               }\r
+\r
+               #endregion // Properties\r
+       }\r
+}\r
diff --git a/mcs/class/System.EnterpriseServices/System.EnterpriseServices/ServicedComponentException.cs b/mcs/class/System.EnterpriseServices/System.EnterpriseServices/ServicedComponentException.cs
new file mode 100644 (file)
index 0000000..582be98
--- /dev/null
@@ -0,0 +1,35 @@
+// \r
+// System.EnterpriseServices.ServicedComponentException.cs\r
+//\r
+// Author:\r
+//   Tim Coleman (tim@timcoleman.com)\r
+//\r
+// Copyright (C) Tim Coleman, 2002\r
+//\r
+\r
+using System;\r
+\r
+namespace System.EnterpriseServices {\r
+       [Serializable]\r
+       public sealed class ServicedComponentException : SystemException {\r
+\r
+               #region Constructors\r
+\r
+               public ServicedComponentException ()\r
+                       : base ()\r
+               {\r
+               }\r
+\r
+               public ServicedComponentException (string message)\r
+                       : base (message)\r
+               {\r
+               }\r
+\r
+               public ServicedComponentException (string message, Exception innerException)\r
+                       : base (message, innerException)\r
+               {\r
+               }\r
+\r
+               #endregion // Constructors\r
+       }\r
+}\r
diff --git a/mcs/class/System.EnterpriseServices/System.EnterpriseServices/SharedProperty.cs b/mcs/class/System.EnterpriseServices/System.EnterpriseServices/SharedProperty.cs
new file mode 100644 (file)
index 0000000..502e3bc
--- /dev/null
@@ -0,0 +1,41 @@
+// \r
+// System.EnterpriseServices.SharedProperty.cs\r
+//\r
+// Author:\r
+//   Tim Coleman (tim@timcoleman.com)\r
+//\r
+// Copyright (C) Tim Coleman, 2002\r
+//\r
+\r
+using System;\r
+using System.Runtime.InteropServices;\r
+\r
+namespace System.EnterpriseServices {\r
+       [ComVisible (false)]\r
+       public sealed class SharedProperty {\r
+\r
+               #region Fields\r
+\r
+               ISharedProperty property;\r
+\r
+               #endregion\r
+\r
+               #region Constructors\r
+\r
+               internal SharedProperty (ISharedProperty property)\r
+               {\r
+                       this.property = property;\r
+               }\r
+\r
+               #endregion // Constructors\r
+\r
+               #region Properties\r
+\r
+               public object Value {\r
+                       get { return property.Value; }\r
+                       set { property.Value = value; }\r
+               }\r
+\r
+               #endregion\r
+       }\r
+}\r
diff --git a/mcs/class/System.EnterpriseServices/System.EnterpriseServices/SharedPropertyGroup.cs b/mcs/class/System.EnterpriseServices/System.EnterpriseServices/SharedPropertyGroup.cs
new file mode 100644 (file)
index 0000000..18b15e6
--- /dev/null
@@ -0,0 +1,56 @@
+// \r
+// System.EnterpriseServices.SharedPropertyGroup.cs\r
+//\r
+// Author:\r
+//   Tim Coleman (tim@timcoleman.com)\r
+//\r
+// Copyright (C) Tim Coleman, 2002\r
+//\r
+\r
+using System;\r
+using System.Runtime.InteropServices;\r
+\r
+namespace System.EnterpriseServices {\r
+       [ComVisible (false)]\r
+       public sealed class SharedPropertyGroup {\r
+\r
+               #region Fields\r
+\r
+               ISharedPropertyGroup propertyGroup;\r
+\r
+               #endregion\r
+\r
+               #region Constructors\r
+\r
+               internal SharedPropertyGroup (ISharedPropertyGroup propertyGroup)\r
+               {\r
+                       this.propertyGroup = propertyGroup;\r
+               }\r
+\r
+               #endregion // Constructors\r
+\r
+               #region Methods\r
+\r
+               public SharedProperty CreateProperty (string name, out bool fExists)\r
+               {\r
+                       return new SharedProperty (propertyGroup.CreateProperty (name, out fExists));\r
+               }\r
+\r
+               public SharedProperty CreatePropertyByPosition (int position, out bool fExists)\r
+               {\r
+                       return new SharedProperty (propertyGroup.CreatePropertyByPosition (position, out fExists));\r
+               }\r
+\r
+               public SharedProperty Property (string name)\r
+               {\r
+                       return new SharedProperty (propertyGroup.Property (name));\r
+               }\r
+\r
+               public SharedProperty PropertyByPosition (int position)\r
+               {\r
+                       return new SharedProperty (propertyGroup.PropertyByPosition (position));\r
+               }\r
+\r
+               #endregion // Methods\r
+       }\r
+}\r
diff --git a/mcs/class/System.EnterpriseServices/System.EnterpriseServices/SharedPropertyGroupManager.cs b/mcs/class/System.EnterpriseServices/System.EnterpriseServices/SharedPropertyGroupManager.cs
new file mode 100644 (file)
index 0000000..1125b64
--- /dev/null
@@ -0,0 +1,48 @@
+// \r
+// System.EnterpriseServices.SharedPropertyGroupManager.cs\r
+//\r
+// Author:\r
+//   Tim Coleman (tim@timcoleman.com)\r
+//\r
+// Copyright (C) Tim Coleman, 2002\r
+//\r
+\r
+using System;\r
+using System.Collections;\r
+using System.Runtime.InteropServices;\r
+\r
+namespace System.EnterpriseServices {\r
+       [ComVisible (false)]\r
+       public sealed class SharedPropertyGroupManager : IEnumerable {\r
+\r
+               #region Constructors\r
+\r
+               public SharedPropertyGroupManager ()\r
+               {\r
+               }\r
+\r
+               #endregion // Constructors\r
+\r
+               #region Methods\r
+\r
+               [MonoTODO]\r
+               public SharedPropertyGroup CreatePropertyGroup (string name, ref PropertyLockMode dwIsoMode, ref PropertyReleaseMode dwRelMode, out bool fExist)\r
+               {\r
+                       throw new NotImplementedException ();\r
+               }\r
+\r
+               [MonoTODO]\r
+               public IEnumerator GetEnumerator ()\r
+               {\r
+                       throw new NotImplementedException ();\r
+               }\r
+\r
+               [MonoTODO]\r
+               public SharedPropertyGroup Group (string name)\r
+               {\r
+                       throw new NotImplementedException ();\r
+               }\r
+\r
+               #endregion // Methods\r
+       }\r
+}\r
diff --git a/mcs/class/System.EnterpriseServices/System.EnterpriseServices/SynchronizationAttribute.cs b/mcs/class/System.EnterpriseServices/System.EnterpriseServices/SynchronizationAttribute.cs
new file mode 100644 (file)
index 0000000..2add45b
--- /dev/null
@@ -0,0 +1,44 @@
+// \r
+// System.EnterpriseServices.SynchronizationAttribute.cs\r
+//\r
+// Author:\r
+//   Tim Coleman (tim@timcoleman.com)\r
+//\r
+// Copyright (C) Tim Coleman, 2002\r
+//\r
+\r
+using System;\r
+\r
+namespace System.EnterpriseServices {\r
+       [AttributeUsage (AttributeTargets.Class)]\r
+       public sealed class SynchronizationAttribute : Attribute {\r
+\r
+               #region Fields\r
+\r
+               SynchronizationOption val;\r
+\r
+               #endregion // Fields\r
+\r
+               #region Constructors\r
+\r
+               public SynchronizationAttribute ()\r
+                       : this (SynchronizationOption.Required)\r
+               {\r
+               }\r
+\r
+               public SynchronizationAttribute (SynchronizationOption val)\r
+               {\r
+                       this.val = val;\r
+               }\r
+\r
+               #endregion // Constructors\r
+\r
+               #region Properties\r
+\r
+               public SynchronizationOption Value {\r
+                       get { return val; }\r
+               }\r
+\r
+               #endregion // Properties\r
+       }\r
+}\r
diff --git a/mcs/class/System.EnterpriseServices/System.EnterpriseServices/SynchronizationOption.cs b/mcs/class/System.EnterpriseServices/System.EnterpriseServices/SynchronizationOption.cs
new file mode 100644 (file)
index 0000000..2186e63
--- /dev/null
@@ -0,0 +1,21 @@
+// \r
+// System.EnterpriseServices.SynchronizationOption.cs\r
+//\r
+// Author:\r
+//   Tim Coleman (tim@timcoleman.com)\r
+//\r
+// Copyright (C) Tim Coleman, 2002\r
+//\r
+\r
+using System;\r
+\r
+namespace System.EnterpriseServices {\r
+       [Serializable]\r
+       public enum SynchronizationOption {\r
+               Disabled,\r
+               NotSupported,\r
+               Required,\r
+               RequiresNew,\r
+               Supported\r
+       }\r
+}\r
index 0920ce8f92decaab107a0701d9e2318ac2be2016..d134ddcff7cc661d1fb48460bbcd0f3649d95044 100755 (executable)
@@ -7,7 +7,7 @@
 // (C) Ximian, Inc.  http://www.ximian.com
 //
 
-namespace System {
+namespace System.EnterpriseServices {
 
        /// <summary>
        ///   The TODO attribute is used to flag all incomplete bits in our class libraries
diff --git a/mcs/class/System.EnterpriseServices/System.EnterpriseServices/TransactionAttribute.cs b/mcs/class/System.EnterpriseServices/System.EnterpriseServices/TransactionAttribute.cs
new file mode 100644 (file)
index 0000000..d308b1f
--- /dev/null
@@ -0,0 +1,58 @@
+// \r
+// System.EnterpriseServices.TransactionAttribute.cs\r
+//\r
+// Author:\r
+//   Tim Coleman (tim@timcoleman.com)\r
+//\r
+// Copyright (C) Tim Coleman, 2002\r
+//\r
+\r
+using System;\r
+\r
+namespace System.EnterpriseServices {\r
+       [AttributeUsage (AttributeTargets.Class)]\r
+       public sealed class TransactionAttribute : Attribute {\r
+\r
+               #region Fields\r
+\r
+               TransactionIsolationLevel isolation;\r
+               int timeout;\r
+               TransactionOption val;\r
+\r
+               #endregion // Fields\r
+\r
+               #region Constructors\r
+\r
+               public TransactionAttribute ()\r
+                       : this (TransactionOption.Required)\r
+               {\r
+               }\r
+\r
+               public TransactionAttribute (TransactionOption val)\r
+               {\r
+                       this.isolation = TransactionIsolationLevel.Serializable;\r
+                       this.timeout = -1;\r
+                       this.val = val;\r
+               }\r
+\r
+               #endregion // Constructors\r
+\r
+               #region Properties\r
+\r
+               public TransactionIsolationLevel Isolation {\r
+                       get { return isolation; }\r
+                       set { isolation = value; }\r
+               }\r
+\r
+               public int Timeout {\r
+                       get { return timeout; }\r
+                       set { timeout = value; }\r
+               }\r
+\r
+               public TransactionOption Value {\r
+                       get { return val; }\r
+               }\r
+\r
+               #endregion // Properties\r
+       }\r
+}\r
diff --git a/mcs/class/System.EnterpriseServices/System.EnterpriseServices/TransactionIsolationLevel.cs b/mcs/class/System.EnterpriseServices/System.EnterpriseServices/TransactionIsolationLevel.cs
new file mode 100644 (file)
index 0000000..d350b4e
--- /dev/null
@@ -0,0 +1,19 @@
+// \r
+// System.EnterpriseServices.TransactionIsolationLevel.cs\r
+//\r
+// Author:\r
+//   Tim Coleman (tim@timcoleman.com)\r
+//\r
+// Copyright (C) Tim Coleman, 2002\r
+//\r
+\r
+namespace System.EnterpriseServices {\r
+       [Serializable]\r
+       public enum TransactionIsolationLevel {\r
+               Any,\r
+               ReadCommitted,\r
+               ReadUncommitted,\r
+               RepeatableRead,\r
+               Serializable\r
+       }\r
+}\r