Author: kostat
Date: 2006-05-25 12:03:26 -0400 (Thu, 25 May 2006)
New Revision: 61116

Modified:
   
trunk/mcs/class/System.Data.OracleClient/System.Data.OracleClient.jvm/OracleConnection.cs
Log:
merge -r 61113:61114

Modified: 
trunk/mcs/class/System.Data.OracleClient/System.Data.OracleClient.jvm/OracleConnection.cs
===================================================================
--- 
trunk/mcs/class/System.Data.OracleClient/System.Data.OracleClient.jvm/OracleConnection.cs
   2006-05-25 15:57:02 UTC (rev 61115)
+++ 
trunk/mcs/class/System.Data.OracleClient/System.Data.OracleClient.jvm/OracleConnection.cs
   2006-05-25 16:03:26 UTC (rev 61116)
@@ -44,12 +44,6 @@
 
 namespace System.Data.OracleClient {
        public sealed class OracleConnection : AbstractDBConnection, 
System.ICloneable {
-               #region Fields 
-
-               static readonly IConnectionProvider _connectionProvider;
-
-               #endregion //Fields
-
                #region Events
 
                public event OracleInfoMessageEventHandler InfoMessage;
@@ -59,17 +53,6 @@
                
                #region Constructors
 
-               static OracleConnection() {
-                       IDictionary providerInfo = (IDictionary)((IList) 
ConfigurationSettings.GetConfig("Mainsoft.Data.Configuration/OracleClientProvider"))[0];
-                       string providerType = (string) providerInfo ["type"];
-                       if (providerType == null || providerType.Length == 0)
-                               _connectionProvider = new GenericProvider 
(providerInfo); 
-                       else {
-                               Type t = Type.GetType (providerType);
-                               _connectionProvider = (IConnectionProvider) 
Activator.CreateInstance (t , new object[] {providerInfo});
-                       }
-               }
-
                public OracleConnection() : this(null) {
                }
 
@@ -81,7 +64,12 @@
                #region Methods
 
                protected override IConnectionProvider GetConnectionProvider() {
-                       return _connectionProvider;
+                       IDictionary conProviderDict = 
ConnectionStringDictionary.Parse(ConnectionString);
+                       string provider = (string)conProviderDict["Provider"];
+                       if (provider == null)
+                               provider = "ORACLECLIENT";
+
+                       return 
GetConnectionProvider("Mainsoft.Data.Configuration/OracleClientProviders", 
provider);
                }
 
                public new OracleTransaction BeginTransaction(IsolationLevel 
level) {

_______________________________________________
Mono-patches maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches

Reply via email to