Add getNames methods to managers

modifié:         core/lib/Thelia/Core/FileFormat/Archive/ArchiveBuilderManager.php
	modifié:         core/lib/Thelia/Core/FileFormat/Formatter/FormatterManager.php
This commit is contained in:
Benjamin Perche
2014-07-04 15:07:07 +02:00
parent d82ca5d767
commit a80a35b5de
2 changed files with 48 additions and 3 deletions

View File

@@ -22,6 +22,9 @@ class ArchiveBuilderManager
{
<<<<<<< HEAD
<<<<<<< HEAD
<<<<<<< HEAD
=======
>>>>>>> Add getNames methods to managers
/** @var array */
protected $archiveBuilders = array();
=======
@@ -39,6 +42,7 @@ class ArchiveBuilderManager
}
/**
<<<<<<< HEAD
<<<<<<< HEAD
<<<<<<< HEAD
* @param AbstractArchiveBuilder $archiveBuilder
* @return $this
@@ -54,19 +58,26 @@ class ArchiveBuilderManager
=======
* @param AbstractArchiveBuilder $archiveCreator
>>>>>>> Fix cs
=======
* @param AbstractArchiveBuilder $archiveBuilder
>>>>>>> Add getNames methods to managers
* @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);
<<<<<<< HEAD
<<<<<<< HEAD
$this->archiveCreators[$archiveCreator->getName()] = $archiveCreator;
>>>>>>> Define archive builders and formatters
=======
$this->archiveBuilders[$archiveCreator->getName()] = $archiveCreator;
>>>>>>> Fix cs and add get method in managers
=======
$this->archiveBuilders[$archiveBuilder->getName()] = $archiveBuilder;
>>>>>>> Add getNames methods to managers
}
return $this;
@@ -112,6 +123,7 @@ class ArchiveBuilderManager
}
/**
<<<<<<< HEAD
<<<<<<< HEAD
* @return array
*/
@@ -158,12 +170,30 @@ class ArchiveBuilderManager
}
=======
* @return array[AbstractArchiveBuilder]
=======
* @return array
>>>>>>> Add getNames methods to managers
*/
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)) {

View File

@@ -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