add current dev version (WIP)
[GitHub/Stricted/Domain-Control-Panel.git] / lib / system / cache / builder / ICacheBuilder.class.php
1 <?php
2 namespace dns\system\cache\builder;
3
4 /**
5 * A cache builder provides data for the cache handler that ought to be cached.
6 *
7 * @author Alexander Ebert
8 * @copyright 2001-2014 WoltLab GmbH
9 * @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
10 * @package com.woltlab.wcf
11 * @subpackage system.cache.builder
12 * @category Community Framework
13 */
14 interface ICacheBuilder {
15 /**
16 * Returns the data that ought to be cached.
17 *
18 * @param array $parameters
19 * @param string $arrayIndex
20 * @return array
21 */
22 public function getData(array $parameters = array(), $arrayIndex = '');
23
24 /**
25 * Returns maximum lifetime for cache resource.
26 *
27 * @return integer
28 */
29 public function getMaxLifetime();
30
31 /**
32 * Flushes cache. If no parameters are given, all caches starting with
33 * the same cache name will be flushed too.
34 *
35 * @param array $parameters
36 */
37 public function reset(array $parameters = array());
38 }