Extended UrlMatcher to provide an additional interface and enhanced features.
This class requires Symfony 2.2 for a refactoring done to the symfony UrlMatcher
@author Larry Garfield
Expanded class hierarchy of UrlMatcher
class UrlMatcher extends SymfonyUrlMatcher implements FinalMatcherInterface {
/**
* {@inheritdoc}
*/
public function finalMatch(RouteCollection $collection, Request $request) {
$this->routes = $collection;
$context = new RequestContext();
$context
->fromRequest($request);
$this
->setContext($context);
return $this
->match($request
->getPathInfo());
}
/**
* {@inheritdoc}
*/
protected function getAttributes(Route $route, $name, array $attributes) {
if ($route instanceof RouteObjectInterface && is_string($route
->getRouteKey())) {
$name = $route
->getRouteKey();
}
$attributes[RouteObjectInterface::ROUTE_NAME] = $name;
$attributes[RouteObjectInterface::ROUTE_OBJECT] = $route;
return $this
->mergeDefaults($attributes, $route
->getDefaults());
}
}
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
UrlMatcher:: |
protected | property | ||
UrlMatcher:: |
protected | property | ||
UrlMatcher:: |
protected | property | ||
UrlMatcher:: |
public | function |
Matches a request against a route collection and returns exactly one result. Overrides FinalMatcherInterface:: |
1 |
UrlMatcher:: |
protected | function |
Returns an array of values to use as request attributes. Overrides UrlMatcher:: |
|
UrlMatcher:: |
public | function |
Gets the request context. Overrides RequestContextAwareInterface:: |
|
UrlMatcher:: |
protected | function | Handles specific route requirements. | 1 |
UrlMatcher:: |
public | function |
Tries to match a URL path with a set of routes. Overrides UrlMatcherInterface:: |
5 |
UrlMatcher:: |
protected | function | Tries to match a URL with a set of routes. | 1 |
UrlMatcher:: |
protected | function | Get merged default parameters. | |
UrlMatcher:: |
constant | |||
UrlMatcher:: |
constant | |||
UrlMatcher:: |
constant | |||
UrlMatcher:: |
public | function |
Sets the request context. Overrides RequestContextAwareInterface:: |
|
UrlMatcher:: |
public | function | Constructor. | 4 |