%PDF- %PDF-
Direktori : /home/silvzytp/crm-dub-code/vendor/laravel/framework/src/Illuminate/Queue/Console/ |
Current File : //home/silvzytp/crm-dub-code/vendor/laravel/framework/src/Illuminate/Queue/Console/PruneBatchesCommand.php |
<?php namespace Illuminate\Queue\Console; use Illuminate\Bus\BatchRepository; use Illuminate\Bus\DatabaseBatchRepository; use Illuminate\Bus\PrunableBatchRepository; use Illuminate\Console\Command; use Illuminate\Support\Carbon; use Symfony\Component\Console\Attribute\AsCommand; #[AsCommand(name: 'queue:prune-batches')] class PruneBatchesCommand extends Command { /** * The console command signature. * * @var string */ protected $signature = 'queue:prune-batches {--hours=24 : The number of hours to retain batch data} {--unfinished= : The number of hours to retain unfinished batch data } {--cancelled= : The number of hours to retain cancelled batch data }'; /** * The name of the console command. * * This name is used to identify the command during lazy loading. * * @var string|null * * @deprecated */ protected static $defaultName = 'queue:prune-batches'; /** * The console command description. * * @var string */ protected $description = 'Prune stale entries from the batches database'; /** * Execute the console command. * * @return void */ public function handle() { $repository = $this->laravel[BatchRepository::class]; $count = 0; if ($repository instanceof PrunableBatchRepository) { $count = $repository->prune(Carbon::now()->subHours($this->option('hours'))); } $this->components->info("{$count} entries deleted."); if ($this->option('unfinished')) { $count = 0; if ($repository instanceof DatabaseBatchRepository) { $count = $repository->pruneUnfinished(Carbon::now()->subHours($this->option('unfinished'))); } $this->components->info("{$count} unfinished entries deleted."); } if ($this->option('cancelled')) { $count = 0; if ($repository instanceof DatabaseBatchRepository) { $count = $repository->pruneCancelled(Carbon::now()->subHours($this->option('cancelled'))); } $this->components->info("{$count} cancelled entries deleted."); } } }