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: * @package Nette\Application
11: */
12:
13:
14:
15: /**
16: * The bi-directional router.
17: *
18: * @author David Grudl
19: * @package Nette\Application
20: */
21: interface IRouter
22: {
23: /** only matching route */
24: const ONE_WAY = 1;
25:
26: /** HTTPS route */
27: const SECURED = 2;
28:
29: /**
30: * Maps HTTP request to a Request object.
31: * @param IHttpRequest
32: * @return NPresenterRequest|NULL
33: */
34: function match(IHttpRequest $httpRequest);
35:
36: /**
37: * Constructs absolute URL from Request object.
38: * @param NPresenterRequest
39: * @param NUrl referential URI
40: * @return string|NULL
41: */
42: function constructUrl(NPresenterRequest $appRequest, NUrl $refUrl);
43:
44: }
45: