minor fixing: phpdoc & type-hint
This commit is contained in:
parent
a2c6240da0
commit
b48c22dc1a
3 changed files with 73 additions and 22 deletions
|
@ -25,7 +25,7 @@ class ConfigCache
|
||||||
* @param array $config A initial config array
|
* @param array $config A initial config array
|
||||||
* @param bool $hidePasswordOutput True, if cache variables should take extra care of password values
|
* @param bool $hidePasswordOutput True, if cache variables should take extra care of password values
|
||||||
*/
|
*/
|
||||||
public function __construct(array $config = [], $hidePasswordOutput = true)
|
public function __construct(array $config = [], bool $hidePasswordOutput = true)
|
||||||
{
|
{
|
||||||
$this->hidePasswordOutput = $hidePasswordOutput;
|
$this->hidePasswordOutput = $hidePasswordOutput;
|
||||||
$this->load($config);
|
$this->load($config);
|
||||||
|
@ -38,7 +38,7 @@ class ConfigCache
|
||||||
* @param array $config
|
* @param array $config
|
||||||
* @param bool $overwrite Force value overwrite if the config key already exists
|
* @param bool $overwrite Force value overwrite if the config key already exists
|
||||||
*/
|
*/
|
||||||
public function load(array $config, $overwrite = false)
|
public function load(array $config, bool $overwrite = false)
|
||||||
{
|
{
|
||||||
$categories = array_keys($config);
|
$categories = array_keys($config);
|
||||||
|
|
||||||
|
@ -68,7 +68,7 @@ class ConfigCache
|
||||||
*
|
*
|
||||||
* @return null|mixed Returns the value of the Config entry or null if not set
|
* @return null|mixed Returns the value of the Config entry or null if not set
|
||||||
*/
|
*/
|
||||||
public function get($cat, $key = null)
|
public function get(string $cat, string $key = null)
|
||||||
{
|
{
|
||||||
if (isset($this->config[$cat][$key])) {
|
if (isset($this->config[$cat][$key])) {
|
||||||
return $this->config[$cat][$key];
|
return $this->config[$cat][$key];
|
||||||
|
@ -82,14 +82,14 @@ class ConfigCache
|
||||||
/**
|
/**
|
||||||
* Sets a default value in the config cache. Ignores already existing keys.
|
* Sets a default value in the config cache. Ignores already existing keys.
|
||||||
*
|
*
|
||||||
* @param string $cat Config category
|
* @param string $cat Config category
|
||||||
* @param string $k Config key
|
* @param string $key Config key
|
||||||
* @param mixed $v Default value to set
|
* @param mixed $value Default value to set
|
||||||
*/
|
*/
|
||||||
private function setDefault($cat, $k, $v)
|
private function setDefault(string $cat, string $key, $value)
|
||||||
{
|
{
|
||||||
if (!isset($this->config[$cat][$k])) {
|
if (!isset($this->config[$cat][$key])) {
|
||||||
$this->set($cat, $k, $v);
|
$this->set($cat, $key, $value);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -102,7 +102,7 @@ class ConfigCache
|
||||||
*
|
*
|
||||||
* @return bool True, if the value is set
|
* @return bool True, if the value is set
|
||||||
*/
|
*/
|
||||||
public function set($cat, $key, $value)
|
public function set(string $cat, string $key, $value)
|
||||||
{
|
{
|
||||||
if (!isset($this->config[$cat])) {
|
if (!isset($this->config[$cat])) {
|
||||||
$this->config[$cat] = [];
|
$this->config[$cat] = [];
|
||||||
|
@ -111,7 +111,7 @@ class ConfigCache
|
||||||
if ($this->hidePasswordOutput &&
|
if ($this->hidePasswordOutput &&
|
||||||
$key == 'password' &&
|
$key == 'password' &&
|
||||||
is_string($value)) {
|
is_string($value)) {
|
||||||
$this->config[$cat][$key] = new HiddenString((string) $value);
|
$this->config[$cat][$key] = new HiddenString((string)$value);
|
||||||
} else {
|
} else {
|
||||||
$this->config[$cat][$key] = $value;
|
$this->config[$cat][$key] = $value;
|
||||||
}
|
}
|
||||||
|
@ -126,7 +126,7 @@ class ConfigCache
|
||||||
*
|
*
|
||||||
* @return bool true, if deleted
|
* @return bool true, if deleted
|
||||||
*/
|
*/
|
||||||
public function delete($cat, $key)
|
public function delete(string $cat, string $key)
|
||||||
{
|
{
|
||||||
if (isset($this->config[$cat][$key])) {
|
if (isset($this->config[$cat][$key])) {
|
||||||
unset($this->config[$cat][$key]);
|
unset($this->config[$cat][$key]);
|
||||||
|
|
|
@ -20,9 +20,9 @@ class PConfigCache
|
||||||
private $hidePasswordOutput;
|
private $hidePasswordOutput;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param bool $hidePasswordOutput True, if cache variables should take extra care of password values
|
* @param bool $hidePasswordOutput True, if cache variables should take extra care of password values
|
||||||
*/
|
*/
|
||||||
public function __construct($hidePasswordOutput = true)
|
public function __construct(bool $hidePasswordOutput = true)
|
||||||
{
|
{
|
||||||
$this->hidePasswordOutput = $hidePasswordOutput;
|
$this->hidePasswordOutput = $hidePasswordOutput;
|
||||||
}
|
}
|
||||||
|
@ -34,7 +34,7 @@ class PConfigCache
|
||||||
* @param int $uid
|
* @param int $uid
|
||||||
* @param array $config
|
* @param array $config
|
||||||
*/
|
*/
|
||||||
public function load($uid, array $config)
|
public function load(int $uid, array $config)
|
||||||
{
|
{
|
||||||
$categories = array_keys($config);
|
$categories = array_keys($config);
|
||||||
|
|
||||||
|
@ -56,13 +56,13 @@ class PConfigCache
|
||||||
/**
|
/**
|
||||||
* Retrieves a value from the user config cache
|
* Retrieves a value from the user config cache
|
||||||
*
|
*
|
||||||
* @param int $uid User Id
|
* @param int $uid User Id
|
||||||
* @param string $cat Config category
|
* @param string $cat Config category
|
||||||
* @param string $key Config key
|
* @param string $key Config key
|
||||||
*
|
*
|
||||||
* @return null|string The value of the config entry or null if not set
|
* @return null|string The value of the config entry or null if not set
|
||||||
*/
|
*/
|
||||||
public function get($uid, $cat, $key = null)
|
public function get(int $uid, string $cat, $key = null)
|
||||||
{
|
{
|
||||||
if (isset($this->config[$uid][$cat][$key])) {
|
if (isset($this->config[$uid][$cat][$key])) {
|
||||||
return $this->config[$uid][$cat][$key];
|
return $this->config[$uid][$cat][$key];
|
||||||
|
@ -85,7 +85,7 @@ class PConfigCache
|
||||||
*
|
*
|
||||||
* @return bool Set successful
|
* @return bool Set successful
|
||||||
*/
|
*/
|
||||||
public function set($uid, $cat, $key, $value)
|
public function set(int $uid, string $cat, string $key, $value)
|
||||||
{
|
{
|
||||||
if (!isset($this->config[$uid]) || !is_array($this->config[$uid])) {
|
if (!isset($this->config[$uid]) || !is_array($this->config[$uid])) {
|
||||||
$this->config[$uid] = [];
|
$this->config[$uid] = [];
|
||||||
|
@ -98,7 +98,7 @@ class PConfigCache
|
||||||
if ($this->hidePasswordOutput &&
|
if ($this->hidePasswordOutput &&
|
||||||
$key == 'password' &&
|
$key == 'password' &&
|
||||||
!empty($value) && is_string($value)) {
|
!empty($value) && is_string($value)) {
|
||||||
$this->config[$uid][$cat][$key] = new HiddenString((string) $value);
|
$this->config[$uid][$cat][$key] = new HiddenString((string)$value);
|
||||||
} else {
|
} else {
|
||||||
$this->config[$uid][$cat][$key] = $value;
|
$this->config[$uid][$cat][$key] = $value;
|
||||||
}
|
}
|
||||||
|
@ -116,7 +116,7 @@ class PConfigCache
|
||||||
*
|
*
|
||||||
* @return bool true, if deleted
|
* @return bool true, if deleted
|
||||||
*/
|
*/
|
||||||
public function delete($uid, $cat, $key)
|
public function delete(int $uid, string $cat, string $key)
|
||||||
{
|
{
|
||||||
if (isset($this->config[$uid][$cat][$key])) {
|
if (isset($this->config[$uid][$cat][$key])) {
|
||||||
unset($this->config[$uid][$cat][$key]);
|
unset($this->config[$uid][$cat][$key]);
|
||||||
|
|
|
@ -42,8 +42,59 @@ abstract class Configuration
|
||||||
return $this->configCache;
|
return $this->configCache;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Loads all configuration values of family into a cached storage.
|
||||||
|
*
|
||||||
|
* All configuration values of the system are stored in the cache ( @see IConfigCache )
|
||||||
|
*
|
||||||
|
* @param string $cat The category of the configuration value
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
abstract public function load(string $cat = 'config');
|
abstract public function load(string $cat = 'config');
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Get a particular user's config variable given the category name
|
||||||
|
* ($cat) and a $key.
|
||||||
|
*
|
||||||
|
* Get a particular config value from the given category ($cat)
|
||||||
|
* and the $key from a cached storage either from the $this->configAdapter
|
||||||
|
* (@see IConfigAdapter ) or from the $this->configCache (@see IConfigCache ).
|
||||||
|
*
|
||||||
|
* @param string $cat The category of the configuration value
|
||||||
|
* @param string $key The configuration key to query
|
||||||
|
* @param mixed $default_value optional, The value to return if key is not set (default: null)
|
||||||
|
* @param boolean $refresh optional, If true the config is loaded from the db and not from the cache (default: false)
|
||||||
|
*
|
||||||
|
* @return mixed Stored value or null if it does not exist
|
||||||
|
*/
|
||||||
abstract public function get(string $cat, string $key, $default_value = null, bool $refresh = false);
|
abstract public function get(string $cat, string $key, $default_value = null, bool $refresh = false);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Sets a configuration value for system config
|
||||||
|
*
|
||||||
|
* Stores a config value ($value) in the category ($cat) under the key ($key)
|
||||||
|
*
|
||||||
|
* Note: Please do not store booleans - convert to 0/1 integer values!
|
||||||
|
*
|
||||||
|
* @param string $cat The category of the configuration value
|
||||||
|
* @param string $key The configuration key to set
|
||||||
|
* @param mixed $value The value to store
|
||||||
|
*
|
||||||
|
* @return bool Operation success
|
||||||
|
*/
|
||||||
abstract public function set(string $cat, string $key, $value);
|
abstract public function set(string $cat, string $key, $value);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Deletes the given key from the system configuration.
|
||||||
|
*
|
||||||
|
* Removes the configured value from the stored cache in $this->configCache
|
||||||
|
* (@see ConfigCache ) and removes it from the database (@see IConfigAdapter ).
|
||||||
|
*
|
||||||
|
* @param string $cat The category of the configuration value
|
||||||
|
* @param string $key The configuration key to delete
|
||||||
|
*
|
||||||
|
* @return bool
|
||||||
|
*/
|
||||||
abstract public function delete(string $cat, string $key);
|
abstract public function delete(string $cat, string $key);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue