summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas Müller <thomas.mueller@tmit.eu>2015-02-03 13:31:32 +0100
committerThomas Müller <thomas.mueller@tmit.eu>2015-02-03 13:31:32 +0100
commit9e222ec841946d773514f790fcc567c634d27038 (patch)
tree77393afd8b88a7d40dcc482f2f24f3cda45b7949
parenta24d73aa0cde139c4aee0404c46c54bd1f94ada9 (diff)
parent5ade2854ee0f47e6004fbfbaa59a152c870bf6e0 (diff)
downloadnextcloud-server-9e222ec841946d773514f790fcc567c634d27038.tar.gz
nextcloud-server-9e222ec841946d773514f790fcc567c634d27038.zip
Merge pull request #13791 from owncloud/extstorage-fixdavexceptions
Fix DAV exceptions, some will still return false now
-rw-r--r--lib/private/files/storage/dav.php22
1 files changed, 22 insertions, 0 deletions
diff --git a/lib/private/files/storage/dav.php b/lib/private/files/storage/dav.php
index 2d4916df08a..4f7b3ff8940 100644
--- a/lib/private/files/storage/dav.php
+++ b/lib/private/files/storage/dav.php
@@ -128,6 +128,7 @@ class DAV extends \OC\Files\Storage\Common {
return false;
} catch (\Sabre\DAV\Exception $e) {
$this->convertSabreException($e);
+ return false;
} catch (\Exception $e) {
// TODO: log for now, but in the future need to wrap/rethrow exception
\OCP\Util::writeLog('files_external', $e->getMessage(), \OCP\Util::ERROR);
@@ -149,6 +150,7 @@ class DAV extends \OC\Files\Storage\Common {
return false;
} catch (\Sabre\DAV\Exception $e) {
$this->convertSabreException($e);
+ return false;
} catch (\Exception $e) {
// TODO: log for now, but in the future need to wrap/rethrow exception
\OCP\Util::writeLog('files_external', $e->getMessage(), \OCP\Util::ERROR);
@@ -166,6 +168,7 @@ class DAV extends \OC\Files\Storage\Common {
return false;
} catch (\Sabre\DAV\Exception $e) {
$this->convertSabreException($e);
+ return false;
} catch (\Exception $e) {
// TODO: log for now, but in the future need to wrap/rethrow exception
\OCP\Util::writeLog('files_external', $e->getMessage(), \OCP\Util::ERROR);
@@ -284,6 +287,7 @@ class DAV extends \OC\Files\Storage\Common {
return false;
} catch (\Sabre\DAV\Exception $e) {
$this->convertSabreException($e);
+ return false;
} catch (\Exception $e) {
// TODO: log for now, but in the future need to wrap/rethrow exception
\OCP\Util::writeLog('files_external', $e->getMessage(), \OCP\Util::ERROR);
@@ -337,6 +341,7 @@ class DAV extends \OC\Files\Storage\Common {
return true;
} catch (\Sabre\DAV\Exception $e) {
$this->convertSabreException($e);
+ return false;
} catch (\Exception $e) {
// TODO: log for now, but in the future need to wrap/rethrow exception
\OCP\Util::writeLog('files_external', $e->getMessage(), \OCP\Util::ERROR);
@@ -354,6 +359,7 @@ class DAV extends \OC\Files\Storage\Common {
return true;
} catch (\Sabre\DAV\Exception $e) {
$this->convertSabreException($e);
+ return false;
} catch (\Exception $e) {
// TODO: log for now, but in the future need to wrap/rethrow exception
\OCP\Util::writeLog('files_external', $e->getMessage(), \OCP\Util::ERROR);
@@ -374,6 +380,7 @@ class DAV extends \OC\Files\Storage\Common {
return array();
} catch (\Sabre\DAV\Exception $e) {
$this->convertSabreException($e);
+ return false;
} catch (\Exception $e) {
// TODO: log for now, but in the future need to wrap/rethrow exception
\OCP\Util::writeLog('files_external', $e->getMessage(), \OCP\Util::ERROR);
@@ -398,8 +405,11 @@ class DAV extends \OC\Files\Storage\Common {
} else {
return false;
}
+ } catch (Exception\NotFound $e) {
+ return false;
} catch (\Sabre\DAV\Exception $e) {
$this->convertSabreException($e);
+ return false;
} catch (\Exception $e) {
// TODO: log for now, but in the future need to wrap/rethrow exception
\OCP\Util::writeLog('files_external', $e->getMessage(), \OCP\Util::ERROR);
@@ -440,8 +450,16 @@ class DAV extends \OC\Files\Storage\Common {
try {
$response = $this->client->request($method, $this->encodePath($path), $body);
return $response['statusCode'] == $expected;
+ } catch (Exception\NotFound $e) {
+ if ($method === 'DELETE') {
+ return false;
+ }
+
+ $this->convertSabreException($e);
+ return false;
} catch (\Sabre\DAV\Exception $e) {
$this->convertSabreException($e);
+ return false;
} catch (\Exception $e) {
// TODO: log for now, but in the future need to wrap/rethrow exception
\OCP\Util::writeLog('files_external', $e->getMessage(), \OCP\Util::ERROR);
@@ -549,6 +567,7 @@ class DAV extends \OC\Files\Storage\Common {
return false;
} catch (Exception $e) {
$this->convertSabreException($e);
+ return false;
}
}
@@ -567,6 +586,9 @@ class DAV extends \OC\Files\Storage\Common {
if ($e instanceof \Sabre\DAV\Exception\NotAuthenticated) {
// either password was changed or was invalid all along
throw new StorageInvalidException(get_class($e).': '.$e->getMessage());
+ } else if ($e instanceof \Sabre\DAV\Exception\MethodNotAllowed) {
+ // ignore exception, false will be returned
+ return;
}
throw new StorageNotAvailableException(get_class($e).': '.$e->getMessage());