diff options
Diffstat (limited to 'vendor/doctrine/dbal/src/Driver/IBMDB2/Exception')
7 files changed, 205 insertions, 0 deletions
diff --git a/vendor/doctrine/dbal/src/Driver/IBMDB2/Exception/CannotCopyStreamToStream.php b/vendor/doctrine/dbal/src/Driver/IBMDB2/Exception/CannotCopyStreamToStream.php new file mode 100644 index 0000000..c584fb8 --- /dev/null +++ b/vendor/doctrine/dbal/src/Driver/IBMDB2/Exception/CannotCopyStreamToStream.php | |||
| @@ -0,0 +1,27 @@ | |||
| 1 | <?php | ||
| 2 | |||
| 3 | declare(strict_types=1); | ||
| 4 | |||
| 5 | namespace Doctrine\DBAL\Driver\IBMDB2\Exception; | ||
| 6 | |||
| 7 | use Doctrine\DBAL\Driver\AbstractException; | ||
| 8 | |||
| 9 | /** | ||
| 10 | * @internal | ||
| 11 | * | ||
| 12 | * @psalm-immutable | ||
| 13 | */ | ||
| 14 | final class CannotCopyStreamToStream extends AbstractException | ||
| 15 | { | ||
| 16 | /** @psalm-param array{message: string, ...}|null $error */ | ||
| 17 | public static function new(?array $error): self | ||
| 18 | { | ||
| 19 | $message = 'Could not copy source stream to temporary file'; | ||
| 20 | |||
| 21 | if ($error !== null) { | ||
| 22 | $message .= ': ' . $error['message']; | ||
| 23 | } | ||
| 24 | |||
| 25 | return new self($message); | ||
| 26 | } | ||
| 27 | } | ||
diff --git a/vendor/doctrine/dbal/src/Driver/IBMDB2/Exception/CannotCreateTemporaryFile.php b/vendor/doctrine/dbal/src/Driver/IBMDB2/Exception/CannotCreateTemporaryFile.php new file mode 100644 index 0000000..d7646a0 --- /dev/null +++ b/vendor/doctrine/dbal/src/Driver/IBMDB2/Exception/CannotCreateTemporaryFile.php | |||
| @@ -0,0 +1,27 @@ | |||
| 1 | <?php | ||
| 2 | |||
| 3 | declare(strict_types=1); | ||
| 4 | |||
| 5 | namespace Doctrine\DBAL\Driver\IBMDB2\Exception; | ||
| 6 | |||
| 7 | use Doctrine\DBAL\Driver\AbstractException; | ||
| 8 | |||
| 9 | /** | ||
| 10 | * @internal | ||
| 11 | * | ||
| 12 | * @psalm-immutable | ||
| 13 | */ | ||
| 14 | final class CannotCreateTemporaryFile extends AbstractException | ||
| 15 | { | ||
| 16 | /** @psalm-param array{message: string, ...}|null $error */ | ||
| 17 | public static function new(?array $error): self | ||
| 18 | { | ||
| 19 | $message = 'Could not create temporary file'; | ||
| 20 | |||
| 21 | if ($error !== null) { | ||
| 22 | $message .= ': ' . $error['message']; | ||
| 23 | } | ||
| 24 | |||
| 25 | return new self($message); | ||
| 26 | } | ||
| 27 | } | ||
diff --git a/vendor/doctrine/dbal/src/Driver/IBMDB2/Exception/ConnectionError.php b/vendor/doctrine/dbal/src/Driver/IBMDB2/Exception/ConnectionError.php new file mode 100644 index 0000000..b7bd8be --- /dev/null +++ b/vendor/doctrine/dbal/src/Driver/IBMDB2/Exception/ConnectionError.php | |||
| @@ -0,0 +1,29 @@ | |||
| 1 | <?php | ||
| 2 | |||
| 3 | declare(strict_types=1); | ||
| 4 | |||
| 5 | namespace Doctrine\DBAL\Driver\IBMDB2\Exception; | ||
| 6 | |||
| 7 | use Doctrine\DBAL\Driver\AbstractException; | ||
| 8 | |||
| 9 | use function db2_conn_error; | ||
| 10 | use function db2_conn_errormsg; | ||
| 11 | |||
| 12 | /** | ||
| 13 | * @internal | ||
| 14 | * | ||
| 15 | * @psalm-immutable | ||
| 16 | */ | ||
| 17 | final class ConnectionError extends AbstractException | ||
| 18 | { | ||
| 19 | /** @param resource $connection */ | ||
| 20 | public static function new($connection): self | ||
| 21 | { | ||
| 22 | $message = db2_conn_errormsg($connection); | ||
| 23 | $sqlState = db2_conn_error($connection); | ||
| 24 | |||
| 25 | return Factory::create($message, static function (int $code) use ($message, $sqlState): self { | ||
| 26 | return new self($message, $sqlState, $code); | ||
| 27 | }); | ||
| 28 | } | ||
| 29 | } | ||
diff --git a/vendor/doctrine/dbal/src/Driver/IBMDB2/Exception/ConnectionFailed.php b/vendor/doctrine/dbal/src/Driver/IBMDB2/Exception/ConnectionFailed.php new file mode 100644 index 0000000..9dd0443 --- /dev/null +++ b/vendor/doctrine/dbal/src/Driver/IBMDB2/Exception/ConnectionFailed.php | |||
| @@ -0,0 +1,28 @@ | |||
| 1 | <?php | ||
| 2 | |||
| 3 | declare(strict_types=1); | ||
| 4 | |||
| 5 | namespace Doctrine\DBAL\Driver\IBMDB2\Exception; | ||
| 6 | |||
| 7 | use Doctrine\DBAL\Driver\AbstractException; | ||
| 8 | |||
| 9 | use function db2_conn_error; | ||
| 10 | use function db2_conn_errormsg; | ||
| 11 | |||
| 12 | /** | ||
| 13 | * @internal | ||
| 14 | * | ||
| 15 | * @psalm-immutable | ||
| 16 | */ | ||
| 17 | final class ConnectionFailed extends AbstractException | ||
| 18 | { | ||
| 19 | public static function new(): self | ||
| 20 | { | ||
| 21 | $message = db2_conn_errormsg(); | ||
| 22 | $sqlState = db2_conn_error(); | ||
| 23 | |||
| 24 | return Factory::create($message, static function (int $code) use ($message, $sqlState): self { | ||
| 25 | return new self($message, $sqlState, $code); | ||
| 26 | }); | ||
| 27 | } | ||
| 28 | } | ||
diff --git a/vendor/doctrine/dbal/src/Driver/IBMDB2/Exception/Factory.php b/vendor/doctrine/dbal/src/Driver/IBMDB2/Exception/Factory.php new file mode 100644 index 0000000..91b9b43 --- /dev/null +++ b/vendor/doctrine/dbal/src/Driver/IBMDB2/Exception/Factory.php | |||
| @@ -0,0 +1,35 @@ | |||
| 1 | <?php | ||
| 2 | |||
| 3 | declare(strict_types=1); | ||
| 4 | |||
| 5 | namespace Doctrine\DBAL\Driver\IBMDB2\Exception; | ||
| 6 | |||
| 7 | use Doctrine\DBAL\Driver\AbstractException; | ||
| 8 | |||
| 9 | use function preg_match; | ||
| 10 | |||
| 11 | /** | ||
| 12 | * @internal | ||
| 13 | * | ||
| 14 | * @psalm-immutable | ||
| 15 | */ | ||
| 16 | final class Factory | ||
| 17 | { | ||
| 18 | /** | ||
| 19 | * @param callable(int): T $constructor | ||
| 20 | * | ||
| 21 | * @return T | ||
| 22 | * | ||
| 23 | * @template T of AbstractException | ||
| 24 | */ | ||
| 25 | public static function create(string $message, callable $constructor): AbstractException | ||
| 26 | { | ||
| 27 | $code = 0; | ||
| 28 | |||
| 29 | if (preg_match('/ SQL(\d+)N /', $message, $matches) === 1) { | ||
| 30 | $code = -(int) $matches[1]; | ||
| 31 | } | ||
| 32 | |||
| 33 | return $constructor($code); | ||
| 34 | } | ||
| 35 | } | ||
diff --git a/vendor/doctrine/dbal/src/Driver/IBMDB2/Exception/PrepareFailed.php b/vendor/doctrine/dbal/src/Driver/IBMDB2/Exception/PrepareFailed.php new file mode 100644 index 0000000..5344b65 --- /dev/null +++ b/vendor/doctrine/dbal/src/Driver/IBMDB2/Exception/PrepareFailed.php | |||
| @@ -0,0 +1,25 @@ | |||
| 1 | <?php | ||
| 2 | |||
| 3 | declare(strict_types=1); | ||
| 4 | |||
| 5 | namespace Doctrine\DBAL\Driver\IBMDB2\Exception; | ||
| 6 | |||
| 7 | use Doctrine\DBAL\Driver\AbstractException; | ||
| 8 | |||
| 9 | /** | ||
| 10 | * @internal | ||
| 11 | * | ||
| 12 | * @psalm-immutable | ||
| 13 | */ | ||
| 14 | final class PrepareFailed extends AbstractException | ||
| 15 | { | ||
| 16 | /** @psalm-param array{message: string, ...}|null $error */ | ||
| 17 | public static function new(?array $error): self | ||
| 18 | { | ||
| 19 | if ($error === null) { | ||
| 20 | return new self('Unknown error'); | ||
| 21 | } | ||
| 22 | |||
| 23 | return new self($error['message']); | ||
| 24 | } | ||
| 25 | } | ||
diff --git a/vendor/doctrine/dbal/src/Driver/IBMDB2/Exception/StatementError.php b/vendor/doctrine/dbal/src/Driver/IBMDB2/Exception/StatementError.php new file mode 100644 index 0000000..6bf8511 --- /dev/null +++ b/vendor/doctrine/dbal/src/Driver/IBMDB2/Exception/StatementError.php | |||
| @@ -0,0 +1,34 @@ | |||
| 1 | <?php | ||
| 2 | |||
| 3 | declare(strict_types=1); | ||
| 4 | |||
| 5 | namespace Doctrine\DBAL\Driver\IBMDB2\Exception; | ||
| 6 | |||
| 7 | use Doctrine\DBAL\Driver\AbstractException; | ||
| 8 | |||
| 9 | use function db2_stmt_error; | ||
| 10 | use function db2_stmt_errormsg; | ||
| 11 | |||
| 12 | /** | ||
| 13 | * @internal | ||
| 14 | * | ||
| 15 | * @psalm-immutable | ||
| 16 | */ | ||
| 17 | final class StatementError extends AbstractException | ||
| 18 | { | ||
| 19 | /** @param resource|null $statement */ | ||
| 20 | public static function new($statement = null): self | ||
| 21 | { | ||
| 22 | if ($statement !== null) { | ||
| 23 | $message = db2_stmt_errormsg($statement); | ||
| 24 | $sqlState = db2_stmt_error($statement); | ||
| 25 | } else { | ||
| 26 | $message = db2_stmt_errormsg(); | ||
| 27 | $sqlState = db2_stmt_error(); | ||
| 28 | } | ||
| 29 | |||
| 30 | return Factory::create($message, static function (int $code) use ($message, $sqlState): self { | ||
| 31 | return new self($message, $sqlState, $code); | ||
| 32 | }); | ||
| 33 | } | ||
| 34 | } | ||
