summaryrefslogtreecommitdiffstats
path: root/lib/private/cache
diff options
context:
space:
mode:
authorVincent Petry <pvince81@owncloud.com>2014-03-20 16:15:18 +0100
committerVincent Petry <pvince81@owncloud.com>2014-03-24 12:57:11 +0100
commit10c9b8eb996bcabbe4ef40c51248fd6fca70814a (patch)
tree349246a3f79e37ba8f04e950253d9af5fa8f1251 /lib/private/cache
parentabdc823bb69600c3a4fc23e09f9de5819b57f56e (diff)
downloadnextcloud-server-10c9b8eb996bcabbe4ef40c51248fd6fca70814a.tar.gz
nextcloud-server-10c9b8eb996bcabbe4ef40c51248fd6fca70814a.zip
Cache folder is now configurable
When using an external cache folder, it is automatically mounted in FileSystem::initFileSystem so that any app can use it transparently by creating a view on the "/$user/cache" directory.
Diffstat (limited to 'lib/private/cache')
-rw-r--r--lib/private/cache/file.php15
1 files changed, 8 insertions, 7 deletions
diff --git a/lib/private/cache/file.php b/lib/private/cache/file.php
index 8a6ef39f61b..be6805a9a57 100644
--- a/lib/private/cache/file.php
+++ b/lib/private/cache/file.php
@@ -1,6 +1,7 @@
<?php
/**
* Copyright (c) 2012 Bart Visscher <bartv@thisnet.nl>
+ * Copyright (c) 2014 Vincent Petry <pvince81@owncloud.com>
* This file is licensed under the Affero General Public License version 3 or
* later.
* See the COPYING-README file.
@@ -10,22 +11,22 @@ namespace OC\Cache;
class File {
protected $storage;
+
+ /**
+ * Returns the cache storage for the logged in user
+ * @return cache storage
+ */
protected function getStorage() {
if (isset($this->storage)) {
return $this->storage;
}
if(\OC_User::isLoggedIn()) {
\OC\Files\Filesystem::initMountPoints(\OC_User::getUser());
- $subdir = 'cache';
- $view = new \OC\Files\View('/' . \OC_User::getUser());
- if(!$view->file_exists($subdir)) {
- $view->mkdir($subdir);
- }
- $this->storage = new \OC\Files\View('/' . \OC_User::getUser().'/'.$subdir);
+ $this->storage = new \OC\Files\View('/' . \OC_User::getUser() . '/cache');
return $this->storage;
}else{
\OC_Log::write('core', 'Can\'t get cache storage, user not logged in', \OC_Log::ERROR);
- return false;
+ throw new \OC\ForbiddenException('Can\t get cache storage, user not logged in');
}
}