/** * Remove all thumbnail objects and resources */ public function clearThumbnailsCommand() { $thumbnailCount = $this->thumbnailRepository->countAll(); $this->output->progressStart($thumbnailCount); $iterator = $this->thumbnailRepository->findAllIterator(); foreach ($this->thumbnailRepository->iterate($iterator) as $thumbnail) { $this->thumbnailRepository->remove($thumbnail); $this->output->progressAdvance(1); } }
/** * Render ungenerated thumbnails * * Loops over ungenerated thumbnails and renders them. Optional ``limit`` parameter to limit the amount of * thumbnails to be rendered to avoid memory exhaustion. * * @param integer $limit Limit the amount of thumbnails to be rendered to avoid memory exhaustion * @return void */ public function renderThumbnailsCommand($limit = null) { $thumbnailCount = $this->thumbnailRepository->countUngenerated(); $iterator = $this->thumbnailRepository->findUngeneratedIterator(); $this->output->progressStart($limit !== null && $thumbnailCount > $limit ? $limit : $thumbnailCount); $iteration = 0; foreach ($this->thumbnailRepository->iterate($iterator) as $thumbnail) { if ($thumbnail->getResource() === null) { $this->thumbnailService->refreshThumbnail($thumbnail); $this->persistenceManager->persistAll(); } $this->output->progressAdvance(1); $iteration++; if ($iteration === $limit) { break; } } }