public static function setApplicationConnection(Application $application, $connName) { $container = $application->getKernel()->getContainer(); $connName = $connName ? $connName : 'default'; $connServiceName = sprintf('doctrine.dbal.%s_connection', $connName); if (!$container->hasService($connServiceName)) { throw new \InvalidArgumentException(sprintf('Could not find Doctrine Connection named "%s"', $connName)); } $connection = $container->getService($connServiceName); $helperSet = $application->getHelperSet(); $helperSet->set(new ConnectionHelper($connection), 'db'); }
public static function configureMigrationsForBundle(Application $application, $bundle, Configuration $configuration) { $configuration->setMigrationsNamespace($bundle . '\\DoctrineMigrations'); $dirs = $application->getKernel()->getBundleDirs(); $tmp = str_replace('\\', '/', $bundle); $namespace = str_replace('/', '\\', dirname($tmp)); $bundle = basename($tmp); $dir = $dirs[$namespace] . '/' . $bundle . '/DoctrineMigrations'; $configuration->setMigrationsDirectory($dir); $configuration->registerMigrationsFromDirectory($dir); $configuration->setName($bundle . ' Migrations'); $configuration->setMigrationsTableName(Inflector::tableize($bundle) . '_migration_versions'); }