woocommerceSegment = $woocommerceSegment; $this->woocommerceHelper = $woocommerceHelper; parent::__construct(); } public function checkProcessingRequirements() { return $this->woocommerceHelper->isWooCommerceActive(); } public function processTaskStrategy(ScheduledTaskEntity $task, $timer) { $countOfSynchronized = $task->getMeta()['count_of_synchronized'] ?? 0; $count = $this->woocommerceSegment->synchronizeCustomers($countOfSynchronized); $countOfSynchronized += $count; $task->setMeta(['count_of_synchronized' => $countOfSynchronized]); $this->scheduledTasksRepository->flush(); if ($count === WooCommerce::BATCH_SIZE) { return false; } return true; } }