summaryrefslogtreecommitdiff
path: root/vendor/doctrine/orm/src/Tools/Console/EntityManagerProvider
diff options
context:
space:
mode:
authorpolo <ordipolo@gmx.fr>2024-08-13 23:45:21 +0200
committerpolo <ordipolo@gmx.fr>2024-08-13 23:45:21 +0200
commitbf6655a534a6775d30cafa67bd801276bda1d98d (patch)
treec6381e3f6c81c33eab72508f410b165ba05f7e9c /vendor/doctrine/orm/src/Tools/Console/EntityManagerProvider
parent94d67a4b51f8e62e7d518cce26a526ae1ec48278 (diff)
downloadAppliGestionPHP-bf6655a534a6775d30cafa67bd801276bda1d98d.zip
VERSION 0.2 doctrine ORM et entités
Diffstat (limited to 'vendor/doctrine/orm/src/Tools/Console/EntityManagerProvider')
-rw-r--r--vendor/doctrine/orm/src/Tools/Console/EntityManagerProvider/ConnectionFromManagerProvider.php26
-rw-r--r--vendor/doctrine/orm/src/Tools/Console/EntityManagerProvider/SingleManagerProvider.php31
-rw-r--r--vendor/doctrine/orm/src/Tools/Console/EntityManagerProvider/UnknownManagerException.php23
3 files changed, 80 insertions, 0 deletions
diff --git a/vendor/doctrine/orm/src/Tools/Console/EntityManagerProvider/ConnectionFromManagerProvider.php b/vendor/doctrine/orm/src/Tools/Console/EntityManagerProvider/ConnectionFromManagerProvider.php
new file mode 100644
index 0000000..0776601
--- /dev/null
+++ b/vendor/doctrine/orm/src/Tools/Console/EntityManagerProvider/ConnectionFromManagerProvider.php
@@ -0,0 +1,26 @@
1<?php
2
3declare(strict_types=1);
4
5namespace Doctrine\ORM\Tools\Console\EntityManagerProvider;
6
7use Doctrine\DBAL\Connection;
8use Doctrine\DBAL\Tools\Console\ConnectionProvider;
9use Doctrine\ORM\Tools\Console\EntityManagerProvider;
10
11final class ConnectionFromManagerProvider implements ConnectionProvider
12{
13 public function __construct(private readonly EntityManagerProvider $entityManagerProvider)
14 {
15 }
16
17 public function getDefaultConnection(): Connection
18 {
19 return $this->entityManagerProvider->getDefaultManager()->getConnection();
20 }
21
22 public function getConnection(string $name): Connection
23 {
24 return $this->entityManagerProvider->getManager($name)->getConnection();
25 }
26}
diff --git a/vendor/doctrine/orm/src/Tools/Console/EntityManagerProvider/SingleManagerProvider.php b/vendor/doctrine/orm/src/Tools/Console/EntityManagerProvider/SingleManagerProvider.php
new file mode 100644
index 0000000..ebe60c9
--- /dev/null
+++ b/vendor/doctrine/orm/src/Tools/Console/EntityManagerProvider/SingleManagerProvider.php
@@ -0,0 +1,31 @@
1<?php
2
3declare(strict_types=1);
4
5namespace Doctrine\ORM\Tools\Console\EntityManagerProvider;
6
7use Doctrine\ORM\EntityManagerInterface;
8use Doctrine\ORM\Tools\Console\EntityManagerProvider;
9
10final class SingleManagerProvider implements EntityManagerProvider
11{
12 public function __construct(
13 private readonly EntityManagerInterface $entityManager,
14 private readonly string $defaultManagerName = 'default',
15 ) {
16 }
17
18 public function getDefaultManager(): EntityManagerInterface
19 {
20 return $this->entityManager;
21 }
22
23 public function getManager(string $name): EntityManagerInterface
24 {
25 if ($name !== $this->defaultManagerName) {
26 throw UnknownManagerException::unknownManager($name, [$this->defaultManagerName]);
27 }
28
29 return $this->entityManager;
30 }
31}
diff --git a/vendor/doctrine/orm/src/Tools/Console/EntityManagerProvider/UnknownManagerException.php b/vendor/doctrine/orm/src/Tools/Console/EntityManagerProvider/UnknownManagerException.php
new file mode 100644
index 0000000..583d909
--- /dev/null
+++ b/vendor/doctrine/orm/src/Tools/Console/EntityManagerProvider/UnknownManagerException.php
@@ -0,0 +1,23 @@
1<?php
2
3declare(strict_types=1);
4
5namespace Doctrine\ORM\Tools\Console\EntityManagerProvider;
6
7use OutOfBoundsException;
8
9use function implode;
10use function sprintf;
11
12final class UnknownManagerException extends OutOfBoundsException
13{
14 /** @psalm-param list<string> $knownManagers */
15 public static function unknownManager(string $unknownManager, array $knownManagers = []): self
16 {
17 return new self(sprintf(
18 'Requested unknown entity manager: %s, known managers: %s',
19 $unknownManager,
20 implode(', ', $knownManagers),
21 ));
22 }
23}