4 * This file is part of the Symfony package.
6 * (c) Fabien Potencier <fabien@symfony.com>
8 * For the full copyright and license information, please view the LICENSE
9 * file that was distributed with this source code.
12 namespace Symfony\Component\Routing\Matcher;
14 use Symfony\Component\Routing\Exception\NoConfigurationException;
15 use Symfony\Component\Routing\RequestContextAwareInterface;
16 use Symfony\Component\Routing\Exception\ResourceNotFoundException;
17 use Symfony\Component\Routing\Exception\MethodNotAllowedException;
20 * UrlMatcherInterface is the interface that all URL matcher classes must implement.
22 * @author Fabien Potencier <fabien@symfony.com>
24 interface UrlMatcherInterface extends RequestContextAwareInterface
27 * Tries to match a URL path with a set of routes.
29 * If the matcher can not find information, it must throw one of the exceptions documented
32 * @param string $pathinfo The path info to be parsed (raw format, i.e. not urldecoded)
34 * @return array An array of parameters
36 * @throws NoConfigurationException If no routing configuration could be found
37 * @throws ResourceNotFoundException If the resource could not be found
38 * @throws MethodNotAllowedException If the resource was found but the request method is not allowed
40 public function match($pathinfo);