diff --git a/core/lib/Drupal/Core/Queue/DelayedRequeueException.php b/core/lib/Drupal/Core/Queue/DelayedRequeueException.php index 2f402fedb519..404ab0dc3002 100644 --- a/core/lib/Drupal/Core/Queue/DelayedRequeueException.php +++ b/core/lib/Drupal/Core/Queue/DelayedRequeueException.php @@ -29,9 +29,16 @@ class DelayedRequeueException extends \RuntimeException { * Constructs a DelayedRequeueException. * * @param int $delay - * The desired delay interval for this item. + * The desired delay interval for this item (in seconds). + * @param string $message + * The error message. + * @param int $code + * The error code. + * @param \Throwable|null $previous + * The previous throwable used for the exception chaining. */ - public function __construct(int $delay = 0) { + public function __construct(int $delay = 0, string $message = '', int $code = 0, \Throwable $previous = NULL) { + parent::__construct($message, $code, $previous); if ($delay > 0) { $this->delay = $delay; } diff --git a/core/tests/Drupal/Tests/Core/Queue/QueueExceptionsTest.php b/core/tests/Drupal/Tests/Core/Queue/QueueExceptionsTest.php new file mode 100644 index 000000000000..b95bf82a0a28 --- /dev/null +++ b/core/tests/Drupal/Tests/Core/Queue/QueueExceptionsTest.php @@ -0,0 +1,32 @@ +getDelay()); + static::assertSame('Delay the processing.', $without_previous->getMessage()); + static::assertSame(0, $without_previous->getCode()); + static::assertNull($without_previous->getPrevious()); + + $with_previous = new DelayedRequeueException(100, 'Increase the delay.', 200, $without_previous); + static::assertSame(100, $with_previous->getDelay()); + static::assertSame('Increase the delay.', $with_previous->getMessage()); + static::assertSame(200, $with_previous->getCode()); + static::assertSame($without_previous, $with_previous->getPrevious()); + } + +}