1: <?php
2:
3: /**
4: * This file is part of the Nette Framework (https://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: /**#@+ flag */
24: const ONE_WAY = 1;
25: const SECURED = 2;
26: /**#@-*/
27:
28: /**
29: * Maps HTTP request to a PresenterRequest object.
30: * @param IHttpRequest
31: * @return NPresenterRequest|NULL
32: */
33: function match(IHttpRequest $httpRequest);
34:
35: /**
36: * Constructs absolute URL from PresenterRequest object.
37: * @param IHttpRequest
38: * @param NPresenterRequest
39: * @return string|NULL
40: */
41: function constructUrl(NPresenterRequest $appRequest, IHttpRequest $httpRequest);
42:
43: }
44: