Browse Source

handle locked exceptions when getting file/directory info in sabre

remotes/origin/poc-doctrine-migrations
Robin Appelman 11 years ago
parent
commit
24f0151f81
  1. 7
      lib/private/connector/sabre/directory.php
  2. 2
      lib/private/connector/sabre/objecttree.php

7
lib/private/connector/sabre/directory.php

@ -30,6 +30,7 @@ namespace OC\Connector\Sabre;
use OC\Connector\Sabre\Exception\InvalidPath;
use OC\Connector\Sabre\Exception\FileLocked;
use OCP\Lock\LockedException;
use Sabre\DAV\Exception\Locked;
class Directory extends \OC\Connector\Sabre\Node
implements \Sabre\DAV\ICollection, \Sabre\DAV\IQuota {
@ -191,7 +192,11 @@ class Directory extends \OC\Connector\Sabre\Node
if (!is_null($this->dirContent)) {
return $this->dirContent;
}
$folderContent = $this->fileView->getDirectoryContent($this->path);
try {
$folderContent = $this->fileView->getDirectoryContent($this->path);
} catch (LockedException $e) {
throw new Locked();
}
$nodes = array();
foreach ($folderContent as $info) {

2
lib/private/connector/sabre/objecttree.php

@ -150,6 +150,8 @@ class ObjectTree extends \Sabre\DAV\Tree {
throw new \Sabre\DAV\Exception\ServiceUnavailable('Storage not available');
} catch (StorageInvalidException $e) {
throw new \Sabre\DAV\Exception\NotFound('Storage ' . $path . ' is invalid');
} catch (LockedException $e) {
throw new \Sabre\DAV\Exception\Locked();
}
}

Loading…
Cancel
Save