/// <summary>
 /// Initializes the class.
 /// </summary>
 /// <param name="connectionString"></param>
 /// <param name="keepConnectionOpen"></param>
 /// <param name="catalogNameUsageSetting"></param>
 /// <param name="catalogNameToUse"></param>
 /// <param name="catalogNameOverwrites"></param>
 /// <param name="schemaNameOverwrites"></param>
 private void InitClass(string connectionString, bool keepConnectionOpen, CatalogNameUsage catalogNameUsageSetting, string catalogNameToUse,
                        CatalogNameOverwriteHashtable catalogNameOverwrites, SchemaNameOverwriteHashtable schemaNameOverwrites)
 {
     base.ConnectionString   = connectionString;
     base.KeepConnectionOpen = keepConnectionOpen;
     if (catalogNameOverwrites == null)
     {
         _catalogNameOverwrites = new CatalogNameOverwriteHashtable(catalogNameUsageSetting);
         if (catalogNameUsageSetting != CatalogNameUsage.Default)
         {
             _catalogNameOverwrites.Add("*", catalogNameToUse);
         }
         else
         {
             base.ReadHandleCatalogNameSettingFromConfig(_catalogNameOverwrites);
         }
     }
     else
     {
         _catalogNameOverwrites = catalogNameOverwrites;
     }
     _schemaNameOverwrites = schemaNameOverwrites;
 }
		/// <summary>CTor.</summary>
		/// <param name="connectionString">The connection string to use when connecting to the database.</param>
		/// <param name="keepConnectionOpen">when true, the DataAccessAdapter will not close an opened connection. Use this for multi action usage.</param>
		/// <param name="catalogNameOverwrites"> The from-to name value pairs and setting for the overwriting of catalog names. Can be null.</param>
		/// <param name="schemaNameOverwrites"> The from-to name value pairs and setting for the overwriting of schema names. Can be null.</param>
		public DataAccessAdapter(string connectionString, bool keepConnectionOpen, CatalogNameOverwriteHashtable catalogNameOverwrites, SchemaNameOverwriteHashtable schemaNameOverwrites) 
				: base(PersistenceInfoProviderSingleton.GetInstance())
		{
			InitClassPhase2(connectionString, keepConnectionOpen, CatalogNameUsage.Default, SchemaNameUsage.Default, string.Empty, string.Empty, catalogNameOverwrites, schemaNameOverwrites);
		}
 /// <summary>CTor.</summary>
 /// <param name="connectionString">The connection string to use when connecting to the database.</param>
 /// <param name="keepConnectionOpen">when true, the DataAccessAdapter will not close an opened connection. Use this for multi action usage.</param>
 /// <param name="catalogNameOverwrites"> The from-to name value pairs and setting for the overwriting of catalog names. Can be null.</param>
 /// <param name="schemaNameOverwrites"> The from-to name value pairs and setting for the overwriting of schema names. Can be null.</param>
 public DataAccessAdapter(string connectionString, bool keepConnectionOpen, CatalogNameOverwriteHashtable catalogNameOverwrites, SchemaNameOverwriteHashtable schemaNameOverwrites)
     : base(PersistenceInfoProviderSingleton.GetInstance())
 {
     InitClassPhase2(connectionString, keepConnectionOpen, CatalogNameUsage.Default, SchemaNameUsage.Default, string.Empty, string.Empty, catalogNameOverwrites, schemaNameOverwrites);
 }
        /// <summary>
        /// Initializes the class.
        /// </summary>
        /// <param name="connectionString"></param>
        /// <param name="keepConnectionOpen"></param>
        /// <param name="catalogNameUsageSetting"></param>
        /// <param name="catalogNameToUse"></param>
        /// <param name="catalogNameOverwrites"></param>
        /// <param name="schemaNameOverwrites"></param>
        private void InitClass(string connectionString, bool keepConnectionOpen, CatalogNameUsage catalogNameUsageSetting, string catalogNameToUse,
			CatalogNameOverwriteHashtable catalogNameOverwrites, SchemaNameOverwriteHashtable schemaNameOverwrites)
        {
            base.ConnectionString = connectionString;
            base.KeepConnectionOpen = keepConnectionOpen;
            if(catalogNameOverwrites == null)
            {
                _catalogNameOverwrites = new CatalogNameOverwriteHashtable(catalogNameUsageSetting);
                if(catalogNameUsageSetting!=CatalogNameUsage.Default)
                {
                    _catalogNameOverwrites.Add("*", catalogNameToUse);
                }
                else
                {
                    base.ReadHandleCatalogNameSettingFromConfig(_catalogNameOverwrites);
                }
            }
            else
            {
                _catalogNameOverwrites = catalogNameOverwrites;
            }
            _schemaNameOverwrites = schemaNameOverwrites;
        }