/** * Set configs for database connection * * @param array $config * @return void */ public function setConfig($config) { if (!isset($config['source_directory']) || $config['source_directory'] == '') { $sourceDir = PathManager::getDataDirectory() . '/' . $this->_driver; if (!file_exists($sourceDir)) { if (@mkdir($sourceDir) == false) { throw new Exception('Failed to create data source directory "' . $sourceDir . '". Please check permission of data directory'); } } $config['source_directory'] = $sourceDir; } if (!isset($config['source_file']) || $config['source_file'] == '') { $config['source_file'] = $this->_defaultSourceName; } $this->_config = $config; }