From 2347d0679394a8d9e766a6e4720a315d3faaad07 Mon Sep 17 00:00:00 2001 From: Nicolas Le Goff Date: Fri, 17 Feb 2012 19:11:23 +0100 Subject: [PATCH] fix core manager --- lib/Alchemy/Phrasea/Cache/Manager.php | 2 +- lib/Alchemy/Phrasea/Core.php | 14 ++++++++++---- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/lib/Alchemy/Phrasea/Cache/Manager.php b/lib/Alchemy/Phrasea/Cache/Manager.php index 9ae2af83b1..de2c00197b 100644 --- a/lib/Alchemy/Phrasea/Cache/Manager.php +++ b/lib/Alchemy/Phrasea/Cache/Manager.php @@ -62,7 +62,7 @@ class Manager public function hasChange($name, $driver) { return $this->exists($name) ? - $this->registry[$name] === $driver : false; + $this->registry[$name] !== $driver : true; } public function save($name, $driver) diff --git a/lib/Alchemy/Phrasea/Core.php b/lib/Alchemy/Phrasea/Core.php index b836c76d07..712d1961d6 100644 --- a/lib/Alchemy/Phrasea/Core.php +++ b/lib/Alchemy/Phrasea/Core.php @@ -190,15 +190,21 @@ class Core extends \Pimple { return function($cacheKey, $service) { + $driverType = $service->getType(); + $driver = $service->getService(); + + if(!file_exists(__DIR__ . '/../../../tmp/cache_registry.yml')) + { + touch(__DIR__ . '/../../../tmp/cache_registry.yml'); + } + $file = new \SplFileObject(__DIR__ . '/../../../tmp/cache_registry.yml'); + $parser = new Core\Configuration\Parser\Yaml(); $cacheManager = new \Alchemy\Phrasea\Cache\Manager($file, $parser); - $driverType = $service->getType(); - $driver = $service->getService(); - - if (!$cacheManager->hasChange($cacheKey, $driverType)) + if ($cacheManager->hasChange($cacheKey, $driverType)) { $driver->deleteAll(); $cacheManager->save($cacheKey, $driverType);