Files
piratepoet/lib/DI/ContainerFactory.php
Jan Jakeš 54549ff037 Convert variable names to camel case
[MAILPOET-1796]
2020-01-14 15:22:42 +01:00

43 lines
1.0 KiB
PHP

<?php
namespace MailPoet\DI;
use MailPoetVendor\Symfony\Component\DependencyInjection\Container;
use MailPoetVendor\Symfony\Component\DependencyInjection\ContainerBuilder;
class ContainerFactory {
/** @var IContainerConfigurator */
private $configurator;
/** @var bool */
private $debug;
/**
* ContainerFactory constructor.
* @param bool $debug
*/
public function __construct(IContainerConfigurator $configurator, $debug = false) {
$this->debug = $debug;
$this->configurator = $configurator;
}
/**
* @return Container
*/
public function getContainer() {
$dumpClass = '\\' . $this->configurator->getDumpNamespace() . '\\' . $this->configurator->getDumpClassname();
if (!$this->debug && class_exists($dumpClass)) {
$container = new $dumpClass();
} else {
$container = $this->getConfiguredContainer();
$container->compile();
}
return $container;
}
public function getConfiguredContainer() {
return $this->configurator->configure(new ContainerBuilder());
}
}