aboutsummaryrefslogtreecommitdiffstats
path: root/lib/private/connector/sabre/objecttree.php
diff options
context:
space:
mode:
authorVincent Petry <pvince81@owncloud.com>2015-05-29 09:59:20 +0200
committerRobin Appelman <icewind@owncloud.com>2015-06-01 13:22:57 +0200
commitba174ac626ae54b75565870fdeb55398436599e4 (patch)
tree4e5adebcd21eba19604c98c64ec4b6450506d146 /lib/private/connector/sabre/objecttree.php
parent8665a98744a8d3545859b809fc479ea216e45176 (diff)
downloadnextcloud-server-ba174ac626ae54b75565870fdeb55398436599e4.tar.gz
nextcloud-server-ba174ac626ae54b75565870fdeb55398436599e4.zip
Convert LockedException to FileLocked in Sabre connector
For Sabre to be able to return the proper error code instead of 500, the LockedException is now rethrown as FileLocked exception in the Sabre connector
Diffstat (limited to 'lib/private/connector/sabre/objecttree.php')
-rw-r--r--lib/private/connector/sabre/objecttree.php8
1 files changed, 6 insertions, 2 deletions
diff --git a/lib/private/connector/sabre/objecttree.php b/lib/private/connector/sabre/objecttree.php
index 17d9aff8f68..ed42a31336a 100644
--- a/lib/private/connector/sabre/objecttree.php
+++ b/lib/private/connector/sabre/objecttree.php
@@ -26,10 +26,12 @@
namespace OC\Connector\Sabre;
use OC\Connector\Sabre\Exception\InvalidPath;
+use OC\Connector\Sabre\Exception\FileLocked;
use OC\Files\FileInfo;
use OC\Files\Mount\MoveableMount;
use OCP\Files\StorageInvalidException;
use OCP\Files\StorageNotAvailableException;
+use OCP\Lock\LockedException;
class ObjectTree extends \Sabre\DAV\Tree {
@@ -221,8 +223,10 @@ class ObjectTree extends \Sabre\DAV\Tree {
if (!$renameOkay) {
throw new \Sabre\DAV\Exception\Forbidden('');
}
- } catch (\OCP\Files\StorageNotAvailableException $e) {
+ } catch (StorageNotAvailableException $e) {
throw new \Sabre\DAV\Exception\ServiceUnavailable($e->getMessage());
+ } catch (LockedException $e) {
+ throw new FileLocked($e->getMessage(), $e->getCode(), $e);
}
$this->markDirty($sourceDir);
@@ -258,7 +262,7 @@ class ObjectTree extends \Sabre\DAV\Tree {
try {
$this->fileView->copy($source, $destination);
- } catch (\OCP\Files\StorageNotAvailableException $e) {
+ } catch (StorageNotAvailableException $e) {
throw new \Sabre\DAV\Exception\ServiceUnavailable($e->getMessage());
}