aboutsummaryrefslogtreecommitdiff
path: root/lib/Minz/ModelArray.php
diff options
context:
space:
mode:
authorGravatar Alexandre Alapetite <alexandre@alapetite.fr> 2013-12-28 23:09:39 +0100
committerGravatar Alexandre Alapetite <alexandre@alapetite.fr> 2013-12-28 23:09:39 +0100
commit96bdbafceac44af2159e6b80d3d403e0608991d9 (patch)
treecdea25a7a4835ca4852666ff68b23e22e4c9d3c2 /lib/Minz/ModelArray.php
parent856d2c125b1592df0f98a141f3de599c5089ce02 (diff)
Refactorisation FreshRSS_Configuration
Implémente https://github.com/marienfressinaud/FreshRSS/issues/260 (évite les comparaisons de chaînes au profit des vrais booléens et entiers) Grosse simplification et réduction du code relatif à la configuration. Supprime ConfigurationDAO. Permet de simplifier considérablement configureController. Évite de multiples copies des mêmes données en mémoire. Évite de garder plusieurs versions de la configuration en mémoire (auparavant : dans un tableau au niveau de ModelArray + au niveau de FreshRSS_Configuration + en Session + des copies temporaires comme ConfigurationDAO). Ne stocke plus 'conf' en Session (n'était presque pas utilisé). Évite de recharger plusieurs fois Translate inutilement. Contribue à https://github.com/marienfressinaud/FreshRSS/issues/303
Diffstat (limited to 'lib/Minz/ModelArray.php')
-rw-r--r--lib/Minz/ModelArray.php20
1 files changed, 9 insertions, 11 deletions
diff --git a/lib/Minz/ModelArray.php b/lib/Minz/ModelArray.php
index 89d7f06c1..e3ec77dc9 100644
--- a/lib/Minz/ModelArray.php
+++ b/lib/Minz/ModelArray.php
@@ -9,11 +9,6 @@
*/
class Minz_ModelArray {
/**
- * $array Le tableau php contenu dans le fichier $filename
- */
- protected $array = array ();
-
- /**
* $filename est le nom du fichier
*/
protected $filename;
@@ -25,29 +20,32 @@ class Minz_ModelArray {
*/
public function __construct ($filename) {
$this->filename = $filename;
+ }
+ protected function loadArray() {
if (!file_exists($this->filename)) {
throw new Minz_FileNotExistException($this->filename, Minz_Exception::WARNING);
}
elseif (($handle = $this->getLock()) === false) {
throw new Minz_PermissionDeniedException($this->filename);
} else {
- $this->array = include($this->filename);
+ $data = include($this->filename);
$this->releaseLock($handle);
- if ($this->array === false) {
+ if ($data === false) {
throw new Minz_PermissionDeniedException($this->filename);
- } elseif (!is_array($this->array)) {
- $this->array = array();
+ } elseif (!is_array($data)) {
+ $data = array();
}
+ return $data;
}
}
/**
* Sauve le tableau $array dans le fichier $filename
**/
- protected function writeFile() {
- if (!file_put_contents($this->filename, "<?php\n return " . var_export($this->array, true) . ';', LOCK_EX)) {
+ protected function writeArray($array) {
+ if (!file_put_contents($this->filename, "<?php\n return " . var_export($array, true) . ';', LOCK_EX)) {
throw new Minz_PermissionDeniedException($this->filename);
}
return true;