1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
|
<?php
declare(strict_types=1);
namespace Doctrine\ORM\Tools\Console\EntityManagerProvider;
use Doctrine\ORM\EntityManagerInterface;
use Doctrine\ORM\Tools\Console\EntityManagerProvider;
final class SingleManagerProvider implements EntityManagerProvider
{
/** @var EntityManagerInterface */
private $entityManager;
/** @var string */
private $defaultManagerName;
public function __construct(EntityManagerInterface $entityManager, string $defaultManagerName = 'default')
{
$this->entityManager = $entityManager;
$this->defaultManagerName = $defaultManagerName;
}
public function getDefaultManager(): EntityManagerInterface
{
return $this->entityManager;
}
public function getManager(string $name): EntityManagerInterface
{
if ($name !== $this->defaultManagerName) {
throw UnknownManagerException::unknownManager($name, [$this->defaultManagerName]);
}
return $this->entityManager;
}
}
|