This commit is contained in:
Xes
2025-08-14 22:41:49 +02:00
parent 2de81ccc46
commit 8ce45119b6
39774 changed files with 4309466 additions and 0 deletions

View File

@@ -0,0 +1,45 @@
<?php
namespace Knp\Bundle\MenuBundle\Renderer;
use Knp\Menu\Renderer\RendererProviderInterface;
use Symfony\Component\DependencyInjection\ContainerInterface;
/**
* @deprecated since version 2.2. Use "Knp\Menu\Renderer\PsrProvider" instead.
*/
class ContainerAwareProvider implements RendererProviderInterface
{
private $container;
private $rendererIds;
private $defaultRenderer;
public function __construct(ContainerInterface $container, $defaultRenderer, array $rendererIds, $triggerDeprecation = true)
{
$this->container = $container;
$this->rendererIds = $rendererIds;
$this->defaultRenderer = $defaultRenderer;
if ($triggerDeprecation) {
@trigger_error(sprintf('The %s class is deprecated since 2.2 and will be removed in 3.0. USe "Knp\Menu\Renderer\PsrProvider" instead.', __CLASS__),E_USER_DEPRECATED);
}
}
public function get($name = null)
{
if (null === $name) {
$name = $this->defaultRenderer;
}
if (!isset($this->rendererIds[$name])) {
throw new \InvalidArgumentException(sprintf('The renderer "%s" is not defined.', $name));
}
return $this->container->get($this->rendererIds[$name]);
}
public function has($name)
{
return isset($this->rendererIds[$name]);
}
}