2 // OracleConnectionPoolManager.cs
4 // Part of the Mono class libraries at
5 // mcs/class/System.Data.OracleClient/System.Data.OracleClient
7 // Assembly: System.Data.OracleClient.dll
8 // Namespace: System.Data.OracleClient
11 // Hubert FONGARNAND <informatique.internet@fiducial.fr>
13 // (C) Copyright Hubert FONGARNAND, 2005
16 // Licensed under the MIT/X11 License.
20 using System.Collections;
21 using System.Collections.Specialized;
22 using System.ComponentModel;
24 using System.Data.OracleClient.Oci;
25 using System.Drawing.Design;
26 using System.EnterpriseServices;
28 using System.Threading;
30 namespace System.Data.OracleClient
32 internal class OracleConnectionPoolManager
34 Hashtable pools = new Hashtable();
36 public OracleConnectionPoolManager ()
40 public OracleConnectionPool GetConnectionPool (OracleConnectionInfo info, int minPoolSize, int maxPoolSize)
44 OracleConnectionPool pool = (OracleConnectionPool) pools [info.ConnectionString];
46 pool = new OracleConnectionPool (this, info, minPoolSize, maxPoolSize);
47 pools [info.ConnectionString] = pool;
53 public virtual OciGlue CreateConnection (OracleConnectionInfo info)
57 oci.CreateConnection (info);
61 public void Dispose ()
64 foreach (OracleConnectionPool pool in pools)
71 ~OracleConnectionPoolManager ()