repository = $repository; $this->api = $api; $this->pager = $pager; $this->commandStatus = $commandStatus; } public function run_admin() { if ( ! $this->hasBeenMigrateATERepositoryUpgradeRun() ) { return false; } $chunks = $this->repository->getPairs()->chunk( self::CHUNK_SIZE ); $this->result = $this->pager->iterate( $chunks, function ( Collection $pairs ) { return $this->api->migrate_source_id( $pairs->toArray() ); } ) === 0; return $this->result; } public function run_ajax() { return null; } public function run_frontend() { return null; } /** * @return bool */ public function get_results() { return $this->result; } /** * @return mixed */ private function hasBeenMigrateATERepositoryUpgradeRun() { return $this->commandStatus->hasBeenExecuted( MigrateAteRepository::class ); } }