. */ namespace OC\Files\Cache; class Shared_Permissions extends Permissions { /** * get the permissions for a single file * * @param int $fileId * @param string $user * @return int permissions */ public function get($fileId, $user) { $permissions = $this->storage->getPermissions(); return $this->updatePermissions($permissions); } /** * @param integer $fileId * @param string $user */ private function getFile($fileId, $user) { return $this->get($fileId, $user); } /** * set the permissions of a file * * @param int $fileId * @param string $user * @param int $permissions */ public function set($fileId, $user, $permissions) { // Not a valid action for Shared Permissions } /** * get the permissions of multiply files * * @param int[] $fileIds * @param string $user * @return int[] */ public function getMultiple($fileIds, $user) { $filePermissions = array(); foreach ($fileIds as $fileId) { $filePermissions[$fileId] = $this->get($fileId, $user); } return $filePermissions; } /** * get the permissions for all files in a folder * * @param int $parentId * @param string $user * @return int[] */ public function getDirectoryPermissions($parentId, $user) { if ($parentId === -1 && $this->storage->instanceOfStorage('\OC\Files\Storage\Shared')) { $fileCacheId = $this->storage->getSourceId(); } else { $fileCacheId = $parentId; } $query = \OC_DB::prepare('SELECT `fileid` FROM `*PREFIX*filecache` WHERE `parent` = ?'); $result = $query->execute(array($fileCacheId)); $permissions = $this->get($parentId, $user); $filePermissions = array(); while ($row = $result->fetchRow()) { $filePermissions[$row['fileid']] = $permissions; } return $filePermissions; } /** * remove the permissions for a file * * @param int $fileId * @param string $user */ public function remove($fileId, $user = null) { // Not a valid action for Shared Permissions } public function removeMultiple($fileIds, $user) { // Not a valid action for Shared Permissions } }