1: <?php
 2: 
 3: /**
 4:  * This file is part of the Nette Framework (https://nette.org)
 5:  * Copyright (c) 2004 David Grudl (https://davidgrudl.com)
 6:  */
 7: 
 8: namespace Nette\Application;
 9: 
10: use Nette;
11: 
12: 
13: /**
14:  * The bi-directional router.
15:  *
16:  * @author     David Grudl
17:  */
18: interface IRouter
19: {
20:     /** only matching route */
21:     const ONE_WAY = 1;
22: 
23:     /** HTTPS route */
24:     const SECURED = 2;
25: 
26:     /**
27:      * Maps HTTP request to a Request object.
28:      * @return Request|NULL
29:      */
30:     function match(Nette\Http\IRequest $httpRequest);
31: 
32:     /**
33:      * Constructs absolute URL from Request object.
34:      * @return string|NULL
35:      */
36:     function constructUrl(Request $appRequest, Nette\Http\Url $refUrl);
37: 
38: }
39: