From fbe53e3b29c998e235fae84d881c627f23d7e5f7 Mon Sep 17 00:00:00 2001 From: Dmitriy Simushev Date: Fri, 5 Jun 2015 09:45:25 +0000 Subject: [PATCH] Create getter for update checker inside the cron worker --- .../classes/Mibew/Maintenance/CronWorker.php | 28 +++++++++++++++---- 1 file changed, 23 insertions(+), 5 deletions(-) diff --git a/src/mibew/libs/classes/Mibew/Maintenance/CronWorker.php b/src/mibew/libs/classes/Mibew/Maintenance/CronWorker.php index 1120909d..c49e6259 100644 --- a/src/mibew/libs/classes/Mibew/Maintenance/CronWorker.php +++ b/src/mibew/libs/classes/Mibew/Maintenance/CronWorker.php @@ -66,9 +66,10 @@ class CronWorker public function __construct(PoolInterface $cache, UpdateChecker $update_checker = null) { $this->cache = $cache; - $this->updateChecker = is_null($update_checker) - ? new UpdateChecker() - : $update_checker; + + if (!is_null($update_checker)) { + $this->updateChecker = $update_checker; + } } /** @@ -99,10 +100,11 @@ class CronWorker if (Settings::get('autocheckupdates') == '1') { // Run the update checker - if (!$this->updateChecker->run()) { + $update_checker = $this->getUpdateChecker(); + if (!$update_checker->run()) { $this->errors = array_merge( $this->errors, - $this->updateChecker->getErrors() + $update_checker->getErrors() ); return false; @@ -137,4 +139,20 @@ class CronWorker { return $this->log; } + + /** + * Retrives an instance of Update Checker attached to the worker. + * + * If there was no attached checker it creates a new one. + * + * @return UpdateChecker + */ + protected function getUpdateChecker() + { + if (is_null($this->updateChecker)) { + $this->updateChecker = new UpdateChecker(); + } + + return $this->updateChecker; + } }