public function createConnection(array $params, Configuration $config = null, EventManager $eventManager = null, array $mappingTypes = array())
{
if (isset($params['dbname'])) {
$dbName = $this->getDbNameFromEnv($params['dbname']);
} else {
$dbName = $this->getDbNameFromEnv($params['master']['dbname']);
}
if ($params['driver'] === 'pdo_sqlite') {
if (isset($params['path'])) {
$params['path'] = str_replace("__DBNAME__", $dbName, $params['path']);
}
if (isset($params['master']['path'])) {
$params['master']['path'] = str_replace("__DBNAME__", $dbName, $params['master']['path']);
}
if (!empty($params['slaves'])) {
foreach ($params['slaves'] as &$slave) {
$slave['path'] = str_replace("__DBNAME__", $dbName, $slave['path']);
}
}
} else {
$params['dbname'] = $dbName;
}
return parent::createConnection($params, $config, $eventManager, $mappingTypes);
}