From: Bart Visscher Date: Fri, 5 Apr 2013 15:20:08 +0000 (+0200) Subject: Remember the contructed OC\Files\Cache\* classes in OC\Files\Storage\Common X-Git-Tag: v6.0.0alpha2~924^2 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=50fb13c86186102c255b9f06b25140fffe7c79a6;p=nextcloud-server.git Remember the contructed OC\Files\Cache\* classes in OC\Files\Storage\Common --- diff --git a/lib/files/storage/common.php b/lib/files/storage/common.php index 8aa227ec0b7..38fe5e546f6 100644 --- a/lib/files/storage/common.php +++ b/lib/files/storage/common.php @@ -21,6 +21,10 @@ namespace OC\Files\Storage; */ abstract class Common implements \OC\Files\Storage\Storage { + private $cache; + private $scanner; + private $permissioncache; + private $watcher; public function __construct($parameters) { } @@ -269,19 +273,31 @@ abstract class Common implements \OC\Files\Storage\Storage { } public function getCache($path = '') { - return new \OC\Files\Cache\Cache($this); + if (!isset($this->cache)) { + $this->cache = new \OC\Files\Cache\Cache($this); + } + return $this->cache; } public function getScanner($path = '') { - return new \OC\Files\Cache\Scanner($this); + if (!isset($this->scanner)) { + $this->scanner = new \OC\Files\Cache\Scanner($this); + } + return $this->scanner; } public function getPermissionsCache($path = '') { - return new \OC\Files\Cache\Permissions($this); + if (!isset($this->permissioncache)) { + $this->permissioncache = new \OC\Files\Cache\Permissions($this); + } + return $this->permissioncache; } public function getWatcher($path = '') { - return new \OC\Files\Cache\Watcher($this); + if (!isset($this->watcher)) { + $this->watcher = new \OC\Files\Cache\Watcher($this); + } + return $this->watcher; } /**