1: <?php
2:
3: /**
4: * This file is part of the Nette Framework.
5: *
6: * Copyright (c) 2004, 2010 David Grudl (http://davidgrudl.com)
7: *
8: * This source file is subject to the "Nette license", and/or
9: * GPL license. For more information please see http://nette.org
10: * @package Nette\Application
11: */
12:
13:
14:
15: /**
16: * The bi-directional router.
17: *
18: * @author David Grudl
19: */
20: interface IRouter
21: {
22: /**#@+ flag */
23: const ONE_WAY = 1;
24: const SECURED = 2;
25: /**#@-*/
26:
27: /**
28: * Maps HTTP request to a NPresenterRequest object.
29: * @param IHttpRequest
30: * @return NPresenterRequest|NULL
31: */
32: function match(IHttpRequest $httpRequest);
33:
34: /**
35: * Constructs absolute URL from NPresenterRequest object.
36: * @param IHttpRequest
37: * @param NPresenterRequest
38: * @return string|NULL
39: */
40: function constructUrl(NPresenterRequest $appRequest, IHttpRequest $httpRequest);
41:
42: }
43: