From bf6655a534a6775d30cafa67bd801276bda1d98d Mon Sep 17 00:00:00 2001 From: polo Date: Tue, 13 Aug 2024 23:45:21 +0200 Subject: =?UTF-8?q?VERSION=200.2=20doctrine=20ORM=20et=20entit=C3=A9s?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../doctrine/orm/src/OptimisticLockException.php | 55 ++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 vendor/doctrine/orm/src/OptimisticLockException.php (limited to 'vendor/doctrine/orm/src/OptimisticLockException.php') diff --git a/vendor/doctrine/orm/src/OptimisticLockException.php b/vendor/doctrine/orm/src/OptimisticLockException.php new file mode 100644 index 0000000..f84e134 --- /dev/null +++ b/vendor/doctrine/orm/src/OptimisticLockException.php @@ -0,0 +1,55 @@ +entity; + } + + /** @param object|class-string $entity */ + public static function lockFailed(object|string $entity): self + { + return new self('The optimistic lock on an entity failed.', $entity); + } + + public static function lockFailedVersionMismatch( + object $entity, + int|string|DateTimeInterface $expectedLockVersion, + int|string|DateTimeInterface $actualLockVersion, + ): self { + $expectedLockVersion = $expectedLockVersion instanceof DateTimeInterface ? $expectedLockVersion->getTimestamp() : $expectedLockVersion; + $actualLockVersion = $actualLockVersion instanceof DateTimeInterface ? $actualLockVersion->getTimestamp() : $actualLockVersion; + + return new self('The optimistic lock failed, version ' . $expectedLockVersion . ' was expected, but is actually ' . $actualLockVersion, $entity); + } + + public static function notVersioned(string $entityName): self + { + return new self('Cannot obtain optimistic lock on unversioned entity ' . $entityName, null); + } +} -- cgit v1.2.3