Code Coverage |
||||||||||
Classes and Traits |
Functions and Methods |
Lines |
||||||||
Total | CRAP |
<?php | |
namespace Environaut\Cache; | |
use Environaut\Config\Parameters; | |
interface IReadOnlyCache | |
{ | |
/** | |
* Sets the given location as the cache location to use. | |
* | |
* @param string $location cache file path | |
* | |
* @throws \InvalidArgumentException if location is not readable | |
*/ | |
public function setLocation($location); | |
/** | |
* Returns the location currently set on the cache. | |
* | |
* @return string cache file location currently configured | |
*/ | |
public function getLocation(); | |
/** | |
* Runtime parameters to configure the cache operations. | |
* | |
* @param Parameters $parameters runtime parameters | |
*/ | |
public function setParameters(Parameters $parameters); | |
/** | |
* Loads the settings from the configured or default location. | |
* | |
* @throws \InvalidArgumentException on invalid cache location (non-readable, non-existant etc.) | |
*/ | |
public function load(); | |
/** | |
* Returns the first setting from the loaded cache that matches the given criterias. | |
* | |
* @param string $name key of wanted setting | |
* @param mixed $groups group name of setting, default is null and matches always | |
* @param integer $flag setting type to match, default is null and matches always | |
* | |
* @return \Environaut\Report\Results\Settings\ISetting|null matching setting | |
*/ | |
public function get($name, $groups = null, $flag = null); | |
/** | |
* Returns whether a cached value for a setting from the loaded cache exists, that matches the given criterias. | |
* | |
* @param string $name key of wanted setting | |
* @param mixed $groups group name of setting, default is null and matches always | |
* @param integer $flag setting type to match, default is null and matches always | |
* | |
* @return boolean true if value for that setting is in cache; false otherwise | |
*/ | |
public function has($name, $groups = null, $flag = null); | |
/** | |
* Returns an array of settings matching the given criterias. | |
* | |
* @param mixed $groups name of a group or array of group names or null for all settings regardless of group | |
* @param type $flag only return settings that match the given flag value | |
* | |
* @return array of ISetting instances matching the specification | |
*/ | |
public function getAll($groups = null, $flag = null); | |
} |