Skip to content

Commit 4b94581

Browse files
Allow Listeners to dynamically specify deleteWhenMissingModels (#55508)
* Allow Listeners to dynamically specify deleteWhenMissingModels * Update BroadcastEvent.php * Update CallQueuedListener.php --------- Co-authored-by: Taylor Otwell <[email protected]>
1 parent 0df7b01 commit 4b94581

File tree

3 files changed

+16
-0
lines changed

3 files changed

+16
-0
lines changed

src/Illuminate/Broadcasting/BroadcastEvent.php

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,13 @@ class BroadcastEvent implements ShouldQueue
5050
*/
5151
public $maxExceptions;
5252

53+
/**
54+
* Indicates if the job should be deleted when models are missing.
55+
*
56+
* @var bool
57+
*/
58+
public $deleteWhenMissingModels;
59+
5360
/**
5461
* Create a new job handler instance.
5562
*
@@ -63,6 +70,7 @@ public function __construct($event)
6370
$this->backoff = property_exists($event, 'backoff') ? $event->backoff : null;
6471
$this->afterCommit = property_exists($event, 'afterCommit') ? $event->afterCommit : null;
6572
$this->maxExceptions = property_exists($event, 'maxExceptions') ? $event->maxExceptions : null;
73+
$this->deleteWhenMissingModels = property_exists($event, 'deleteWhenMissingModels') ? $event->deleteWhenMissingModels : null;
6674
}
6775

6876
/**

src/Illuminate/Events/CallQueuedListener.php

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,13 @@ class CallQueuedListener implements ShouldQueue
8282
*/
8383
public $shouldBeEncrypted = false;
8484

85+
/**
86+
* Indicates if the job should be deleted when models are missing.
87+
*
88+
* @var bool
89+
*/
90+
public $deleteWhenMissingModels;
91+
8592
/**
8693
* Create a new job instance.
8794
*

src/Illuminate/Events/Dispatcher.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -677,6 +677,7 @@ protected function propagateListenerOptions($listener, $job)
677677
$job->timeout = $listener->timeout ?? null;
678678
$job->failOnTimeout = $listener->failOnTimeout ?? false;
679679
$job->tries = $listener->tries ?? null;
680+
$job->deleteWhenMissingModels = $listener->deleteWhenMissingModels ?? false;
680681

681682
$job->through(array_merge(
682683
method_exists($listener, 'middleware') ? $listener->middleware(...$data) : [],

0 commit comments

Comments
 (0)