File manager - Edit - /var/www/payraty/helpdesk/vendor/matchish/laravel-scout-elasticsearch/src/Jobs/Import.php
Back
<?php namespace Matchish\ScoutElasticSearch\Jobs; use Elastic\Elasticsearch\Client; use Illuminate\Bus\Queueable; use Illuminate\Support\Collection; use Matchish\ScoutElasticSearch\Jobs\Stages\StageInterface; use Matchish\ScoutElasticSearch\ProgressReportable; use Matchish\ScoutElasticSearch\Searchable\ImportSource; /** * @internal */ final class Import { use Queueable; use ProgressReportable; /** * @var ImportSource */ private $source; public ?int $timeout = null; /** * @param ImportSource $source */ public function __construct(ImportSource $source) { $this->source = $source; } /** * @param Client $elasticsearch */ public function handle(Client $elasticsearch): void { $stages = $this->stages(); $estimate = $stages->sum->estimate(); $this->progressBar()->setMaxSteps($estimate); $stages->each(function ($stage) use ($elasticsearch) { /** @var StageInterface $stage */ $this->progressBar()->setMessage($stage->title()); $stage->handle($elasticsearch); $this->progressBar()->advance($stage->estimate()); }); } private function stages(): Collection { return ImportStages::fromSource($this->source); } }
| ver. 1.4 |
Github
|
.
| PHP 8.3.30 | Generation time: 0 |
proxy
|
phpinfo
|
Settings