Commit | Line | Data |
---|---|---|
ff49a0be S |
1 | <?php |
2 | namespace dns\system\cache\builder; | |
3 | use dns\system\DNS; | |
4 | ||
5 | /** | |
6 | * @author Jan Altensen (Stricted) | |
d4779364 | 7 | * @copyright 2013-2016 Jan Altensen (Stricted) |
ff49a0be S |
8 | */ |
9 | class ControllerCacheBuilder extends AbstractCacheBuilder { | |
10 | /** | |
11 | * @see \dns\system\cache\builder\AbstractCacheBuilder::$maxLifetime | |
12 | */ | |
13 | protected $maxLifetime = 3600; | |
14 | ||
15 | /** | |
16 | * @see \dns\system\cache\builder\AbstractCacheBuilder::rebuild() | |
17 | */ | |
18 | public function rebuild(array $parameters) { | |
19 | $data = array(); | |
20 | ||
21 | $pages = glob(DNS_DIR.'/lib/'.(empty($parameters['module']) ? '' : $parameters['module'].'/').'page/*Page.class.php'); | |
22 | ||
23 | foreach ($pages as $page) { | |
24 | $page = str_replace('Page.class.php', '', basename($page)); | |
25 | ||
26 | $class = "\\dns".(empty($parameters['module']) ? '' : "\\".$parameters['module'])."\\page\\".$page."Page"; | |
27 | if (class_exists($class) && is_subclass_of($class, '\\dns\\page\\AbstractPage')) { | |
28 | $data[strtolower($page)] = $class; | |
29 | } | |
30 | } | |
31 | ||
32 | return $data; | |
33 | } | |
34 | } |