public void ClearPool(DbConnection connection)
        {
            IntPtr ptr;

            System.Data.Common.ADP.CheckArgumentNull(connection, "connection");
            Bid.ScopeEnter(out ptr, "<prov.DbConnectionFactory.ClearPool|API> %d#", this.GetObjectId(connection));
            try
            {
                System.Data.ProviderBase.DbConnectionPoolGroup connectionPoolGroup = this.GetConnectionPoolGroup(connection);
                if (connectionPoolGroup != null)
                {
                    connectionPoolGroup.Clear();
                }
            }
            finally
            {
                Bid.ScopeLeave(ref ptr);
            }
        }
        public void ClearAllPools()
        {
            IntPtr ptr;

            Bid.ScopeEnter(out ptr, "<prov.DbConnectionFactory.ClearAllPools|API> ");
            try
            {
                foreach (KeyValuePair <string, System.Data.ProviderBase.DbConnectionPoolGroup> pair in this._connectionPoolGroups)
                {
                    System.Data.ProviderBase.DbConnectionPoolGroup group = pair.Value;
                    if (group != null)
                    {
                        group.Clear();
                    }
                }
            }
            finally
            {
                Bid.ScopeLeave(ref ptr);
            }
        }