1: <?php
2:
3: /**
4: * This file is part of the Nette Framework (http://nette.org)
5: *
6: * Copyright (c) 2004 David Grudl (http://davidgrudl.com)
7: *
8: * For the full copyright and license information, please view
9: * the file license.txt that was distributed with this source code.
10: */
11:
12: namespace Nette\Application;
13:
14: use Nette;
15:
16:
17:
18: /**
19: * The bi-directional router.
20: *
21: * @author David Grudl
22: */
23: interface IRouter
24: {
25: /** only matching route */
26: const ONE_WAY = 1;
27:
28: /** HTTPS route */
29: const SECURED = 2;
30:
31: /**
32: * Maps HTTP request to a Request object.
33: * @param Nette\Http\IRequest
34: * @return Request|NULL
35: */
36: function match(Nette\Http\IRequest $httpRequest);
37:
38: /**
39: * Constructs absolute URL from Request object.
40: * @param Request
41: * @param Nette\Http\Url referential URI
42: * @return string|NULL
43: */
44: function constructUrl(Request $appRequest, Nette\Http\Url $refUrl);
45:
46: }
47: