From 77a73b1db6429ccd050f8039492efbc78b4cd1d5 Mon Sep 17 00:00:00 2001 From: Richard Miller Date: Fri, 23 Dec 2011 16:38:22 +0000 Subject: [PATCH] Refactored RepositoryManager --- Doctrine/RepositoryManager.php | 5 ++--- Manager/RepositoryManager.php | 20 +++++++------------- 2 files changed, 9 insertions(+), 16 deletions(-) diff --git a/Doctrine/RepositoryManager.php b/Doctrine/RepositoryManager.php index 36eae0c..27cf5cf 100644 --- a/Doctrine/RepositoryManager.php +++ b/Doctrine/RepositoryManager.php @@ -6,8 +6,6 @@ use Doctrine\Common\Annotations\Reader; use Doctrine\Common\Persistence\ManagerRegistry; use FOQ\ElasticaBundle\Finder\FinderInterface; use FOQ\ElasticaBundle\Manager\RepositoryManager as BaseManager; -use FOQ\ElasticaBundle\Repository; -use RuntimeException; /** * @author Richard Miller @@ -45,7 +43,7 @@ class RepositoryManager extends BaseManager return parent::getRepository($realEntityName); } - protected function getCustomRepositoryName($realEntityName) + protected function getRepositoryName($realEntityName) { if (isset($this->entities[$realEntityName]['repositoryName'])) { return $this->entities[$realEntityName]['repositoryName']; @@ -58,6 +56,7 @@ class RepositoryManager extends BaseManager = $annotation->repositoryClass; return $annotation->repositoryClass; } + return 'FOQ\ElasticaBundle\Repository'; } } diff --git a/Manager/RepositoryManager.php b/Manager/RepositoryManager.php index 6d45fc7..983203b 100644 --- a/Manager/RepositoryManager.php +++ b/Manager/RepositoryManager.php @@ -3,7 +3,6 @@ namespace FOQ\ElasticaBundle\Manager; use FOQ\ElasticaBundle\Finder\FinderInterface; -use FOQ\ElasticaBundle\Repository; use RuntimeException; /** * @author Richard Miller @@ -39,27 +38,22 @@ class RepositoryManager implements RepositoryManagerInterface throw new RuntimeException(sprintf('No search finder configured for %s', $entityName)); } - $repositoryName = $this->getCustomRepositoryName($entityName); - - if ($repositoryName) { - if (!class_exists($repositoryName)) { - throw new RuntimeException(sprintf('%s repository for %s does not exist', $repositoryName, $entityName)); - } - $repository = new $repositoryName($this->entities[$entityName]['finder']); - $this->repositories[$entityName] = $repository; - return $repository; + $repositoryName = $this->getRepositoryName($entityName); + if (!class_exists($repositoryName)) { + throw new RuntimeException(sprintf('%s repository for %s does not exist', $repositoryName, $entityName)); } - - $repository = new Repository($this->entities[$entityName]['finder']); + $repository = new $repositoryName($this->entities[$entityName]['finder']); $this->repositories[$entityName] = $repository; + return $repository; } - protected function getCustomRepositoryName($realEntityName) + protected function getRepositoryName($realEntityName) { if (isset($this->entities[$realEntityName]['repositoryName'])) { return $this->entities[$realEntityName]['repositoryName']; } + return 'FOQ\ElasticaBundle\Repository'; } }