public function findAllIterator($configurationHash = null) { /** @var QueryBuilder $queryBuilder */ $queryBuilder = $this->entityManager->createQueryBuilder(); $queryBuilder->select('t')->from($this->getEntityClassName(), 't'); if ($configurationHash !== null) { $queryBuilder->where('t.configurationHash = :configurationHash')->setParameter('configurationHash', $configurationHash); } return $queryBuilder->getQuery()->iterate(); }
/** * Remove thumbnails * * Removes all thumbnail objects and their resources. Optional ``preset`` parameter to only remove thumbnails * matching a specific thumbnail preset configuration. * * @param string $preset Preset name, if provided only thumbnails matching that preset are cleared * @return void */ public function clearThumbnailsCommand($preset = null) { if ($preset !== null) { $thumbnailConfiguration = $this->thumbnailService->getThumbnailConfigurationForPreset($preset); $thumbnailConfigurationHash = $thumbnailConfiguration->getHash(); $thumbnailCount = $this->thumbnailRepository->countByConfigurationHash($thumbnailConfigurationHash); $iterator = $this->thumbnailRepository->findAllIterator($thumbnailConfigurationHash); } else { $thumbnailCount = $this->thumbnailRepository->countAll(); $iterator = $this->thumbnailRepository->findAllIterator(); } $this->output->progressStart($thumbnailCount); foreach ($this->thumbnailRepository->iterate($iterator) as $thumbnail) { $this->thumbnailRepository->remove($thumbnail); $this->output->progressAdvance(1); } }