From 8418974e8eb39394813f4cb25e7cf57c72f68101 Mon Sep 17 00:00:00 2001 From: Benjamin Perche Date: Fri, 4 Jul 2014 15:07:07 +0200 Subject: [PATCH] =?UTF-8?q?Add=20getNames=20methods=20to=20managers=20=09m?= =?UTF-8?q?odifi=C3=A9:=20=20=20=20=20=20=20=20=20core/lib/Thelia/Core/Fil?= =?UTF-8?q?eFormat/Archive/ArchiveBuilderManager.php=20=09modifi=C3=A9:=20?= =?UTF-8?q?=20=20=20=20=20=20=20=20core/lib/Thelia/Core/FileFormat/Formatt?= =?UTF-8?q?er/FormatterManager.php?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Archive/ArchiveBuilderManager.php | 28 +++++++++++++++---- .../FileFormat/Formatter/FormatterManager.php | 15 ++++++++++ 2 files changed, 37 insertions(+), 6 deletions(-) diff --git a/core/lib/Thelia/Core/FileFormat/Archive/ArchiveBuilderManager.php b/core/lib/Thelia/Core/FileFormat/Archive/ArchiveBuilderManager.php index 220de27bd..938445822 100644 --- a/core/lib/Thelia/Core/FileFormat/Archive/ArchiveBuilderManager.php +++ b/core/lib/Thelia/Core/FileFormat/Archive/ArchiveBuilderManager.php @@ -20,6 +20,7 @@ use Thelia\Core\Translation\Translator; */ class ArchiveBuilderManager { + /** @var array */ protected $archiveBuilders = array(); protected $environment; @@ -29,15 +30,15 @@ class ArchiveBuilderManager $this->environment = $environment; } /** - * @param AbstractArchiveBuilder $archiveCreator + * @param AbstractArchiveBuilder $archiveBuilder * @return $this */ - public function add(AbstractArchiveBuilder $archiveCreator) + public function add(AbstractArchiveBuilder $archiveBuilder) { - if (null !== $archiveCreator) { - $archiveCreator->setEnvironment($this->environment); + if (null !== $archiveBuilder) { + $archiveBuilder->setEnvironment($this->environment); - $this->archiveBuilders[$archiveCreator->getName()] = $archiveCreator; + $this->archiveBuilders[$archiveBuilder->getName()] = $archiveBuilder; } return $this; @@ -60,13 +61,28 @@ class ArchiveBuilderManager } /** - * @return array[AbstractArchiveBuilder] + * @return array */ public function getAll() { return $this->archiveBuilders; } + /** + * @return array + */ + public function getNames() + { + $names = []; + + /** @var AbstractArchiveBuilder $builder */ + foreach($this->archiveBuilders as $builder) { + $names[] = $builder->getName(); + } + + return $names; + } + public function get($name) { if (!array_key_exists($name, $this->archiveBuilders)) { diff --git a/core/lib/Thelia/Core/FileFormat/Formatter/FormatterManager.php b/core/lib/Thelia/Core/FileFormat/Formatter/FormatterManager.php index 4035927ae..b7801c7a9 100644 --- a/core/lib/Thelia/Core/FileFormat/Formatter/FormatterManager.php +++ b/core/lib/Thelia/Core/FileFormat/Formatter/FormatterManager.php @@ -69,6 +69,21 @@ class FormatterManager return $this->formatters; } + /** + * @return array + */ + public function getNames() + { + $names = []; + + /** @var AbstractFormatter $formatter */ + foreach($this->formatters as $formatter) { + $names[] = $formatter->getName(); + } + + return $names; + } + /** * @param $name * @throws \OutOfBoundsException