- Модуль: disk
- Путь к файлу: ~/bitrix/modules/disk/lib/search/reindex/stepper.php
- Класс: BitrixDiskSearchReindexStepper
- Вызов: Stepper::execute
public function execute(array &$result)
{
$statusAgent = self::getStatus();
if ($statusAgent === self::STATUS_FINISH || $statusAgent === self::STATUS_PAUSE)
{
return self::FINISH_EXECUTION;
}
$status = $this->loadCurrentStatus();
if (empty($status['count']) || $status['count'] < 0 || $status['steps'] >= $status['count'])
{
self::finishExecution();
return self::FINISH_EXECUTION;
}
$newStatus = [
'count' => $status['count'],
'steps' => $status['steps'],
];
[
'lastId' => $newStatus['lastId'],
'steps' => $steps
] = $this->processStep($status['lastId']);
$newStatus['steps'] += $steps;
if (!empty($newStatus['lastId']))
{
Option::set(static::getModuleId(), static::getName(), serialize($newStatus));
$result = [
'count' => $newStatus['count'],
'steps' => $newStatus['steps'],
];
return self::CONTINUE_EXECUTION;
}
self::finishExecution();
return self::FINISH_EXECUTION;
}