userRepo->findBy(['removed' => true]) as $removedUser) { \usleep($this->pointApiDelay); try { $remoteUser = $this->userApi->getUserById($removedUser->getId()); if ($remoteUser->getId() === $removedUser->getId()) { $this->logger->info('Restoring user', [ 'id' => $removedUser->getId(), 'login' => $removedUser->getLogin(), ]); $removedUser->restore(); $this->em->flush(); } } catch (UserNotFoundException $e) { $this->logger->debug('User is really removed. Keep going.', [ 'id' => $removedUser->getId(), 'login' => $removedUser->getLogin(), ]); continue; } catch (\Exception $e) { $this->logger->error('Error while trying to restore user', [ 'user_id' => $removedUser->getId(), 'user_login' => $removedUser->getLogin(), 'exception' => get_class($e), 'message' => $e->getMessage(), 'file' => $e->getFile(), 'line' => $e->getLine(), ]); } } $this->em->flush(); return Command::SUCCESS; } }