Newer
Older
<?php
namespace Drupal\Core\Routing;
use Drupal\Core\Render\BubbleableMetadata;
use Symfony\Component\HttpFoundation\RequestStack;
Larry Garfield
committed
use Symfony\Component\Routing\Exception\RouteNotFoundException;
use Symfony\Component\Routing\Route;
* No-op implementation of a URL Generator, needed for backward compatibility.
class NullGenerator extends UrlGenerator {
/**
* Override the parent constructor.
*
* @param \Symfony\Component\HttpFoundation\RequestStack $request_stack
* The request stack.
*/
public function __construct(RequestStack $request_stack) {
$this->requestStack = $request_stack;
Angie Byron
committed
$this->context = new RequestContext();
Angie Byron
committed
}
Angie Byron
committed
* {@inheritdoc}
*
* Methods generate(), generateFromRoute() and getPathFromRoute() all call
* this protected method.
Angie Byron
committed
protected function getRoute($name) {
Angie Byron
committed
if ($name === '<front>') {
return new Route('/');
}
elseif ($name === '<current>') {
return new Route($this->requestStack->getCurrentRequest()->getPathInfo());
}
elseif ($name === '<none>') {
return new Route('');
}
Larry Garfield
committed
throw new RouteNotFoundException();
Angie Byron
committed
/**
* {@inheritdoc}
*/
protected function processRoute($name, Route $route, array &$parameters, BubbleableMetadata $bubbleable_metadata = NULL) {
Angie Byron
committed
}
/**
* {@inheritdoc}
*/
protected function getInternalPathFromRoute($name, Route $route, $parameters = [], &$query_params = []) {
Angie Byron
committed
return $route->getPath();
}
/**
* {@inheritdoc}
*/
protected function processPath($path, &$options = [], BubbleableMetadata $bubbleable_metadata = NULL) {
return $path;
}