summaryrefslogtreecommitdiffstats
path: root/apps
diff options
context:
space:
mode:
authorVincent Petry <pvince81@owncloud.com>2016-09-19 12:17:06 +0200
committerMorris Jobke <hey@morrisjobke.de>2016-10-24 15:43:15 +0200
commit44cf67accdc294f46bf82b3f8661f353dc5e22f0 (patch)
tree4e0211076e1a7d9ee06e6f89429509114832be05 /apps
parent729c06548fbfe035c14dae68c4b09494b292d217 (diff)
downloadnextcloud-server-44cf67accdc294f46bf82b3f8661f353dc5e22f0.tar.gz
nextcloud-server-44cf67accdc294f46bf82b3f8661f353dc5e22f0.zip
Storage 503 message improvements
"Storage not available" is now "Storage temporarily not available". Exceptions are now logged in DEBUG level, not FATAL.
Diffstat (limited to 'apps')
-rw-r--r--apps/dav/lib/Connector/Sabre/ExceptionLoggerPlugin.php7
-rw-r--r--apps/dav/lib/Connector/Sabre/ObjectTree.php2
-rw-r--r--apps/files/ajax/list.php10
-rw-r--r--apps/files/js/filelist.js2
-rw-r--r--apps/files/tests/js/filelistSpec.js2
5 files changed, 13 insertions, 10 deletions
diff --git a/apps/dav/lib/Connector/Sabre/ExceptionLoggerPlugin.php b/apps/dav/lib/Connector/Sabre/ExceptionLoggerPlugin.php
index 56a8b2b7641..4f7c2286827 100644
--- a/apps/dav/lib/Connector/Sabre/ExceptionLoggerPlugin.php
+++ b/apps/dav/lib/Connector/Sabre/ExceptionLoggerPlugin.php
@@ -32,7 +32,7 @@ use Sabre\DAV\Exception;
use Sabre\HTTP\Response;
class ExceptionLoggerPlugin extends \Sabre\DAV\ServerPlugin {
- protected $nonFatalExceptions = array(
+ protected $nonFatalExceptions = [
'Sabre\DAV\Exception\NotAuthenticated' => true,
// If tokenauth can throw this exception (which is basically as
// NotAuthenticated. So not fatal.
@@ -47,7 +47,10 @@ class ExceptionLoggerPlugin extends \Sabre\DAV\ServerPlugin {
// forbidden can be expected when trying to upload to
// read-only folders for example
'Sabre\DAV\Exception\Forbidden' => true,
- );
+ // Happens when an external storage or federated share is temporarily
+ // not available
+ 'Sabre\DAV\Exception\StorageNotAvailableException' => true,
+ ];
/** @var string */
private $appName;
diff --git a/apps/dav/lib/Connector/Sabre/ObjectTree.php b/apps/dav/lib/Connector/Sabre/ObjectTree.php
index af1cf79e1db..554a7ad86ca 100644
--- a/apps/dav/lib/Connector/Sabre/ObjectTree.php
+++ b/apps/dav/lib/Connector/Sabre/ObjectTree.php
@@ -159,7 +159,7 @@ class ObjectTree extends \Sabre\DAV\Tree {
try {
$info = $this->fileView->getFileInfo($path);
} catch (StorageNotAvailableException $e) {
- throw new \Sabre\DAV\Exception\ServiceUnavailable('Storage not available');
+ throw new \Sabre\DAV\Exception\ServiceUnavailable('Storage is temporarily not available');
} catch (StorageInvalidException $e) {
throw new \Sabre\DAV\Exception\NotFound('Storage ' . $path . ' is invalid');
} catch (LockedException $e) {
diff --git a/apps/files/ajax/list.php b/apps/files/ajax/list.php
index bb95f124dab..2cd09765435 100644
--- a/apps/files/ajax/list.php
+++ b/apps/files/ajax/list.php
@@ -79,12 +79,12 @@ try {
OCP\JSON::success(array('data' => $data));
} catch (\OCP\Files\StorageNotAvailableException $e) {
\OCP\Util::logException('files', $e);
- OCP\JSON::error(array(
- 'data' => array(
+ OCP\JSON::error([
+ 'data' => [
'exception' => '\OCP\Files\StorageNotAvailableException',
- 'message' => $l->t('Storage not available')
- )
- ));
+ 'message' => $l->t('Storage is temporarily not available')
+ ]
+ ]);
} catch (\OCP\Files\StorageInvalidException $e) {
\OCP\Util::logException('files', $e);
OCP\JSON::error(array(
diff --git a/apps/files/js/filelist.js b/apps/files/js/filelist.js
index 159d008e6e6..b8f605fe4ed 100644
--- a/apps/files/js/filelist.js
+++ b/apps/files/js/filelist.js
@@ -1602,7 +1602,7 @@
this.changeDirectory('/');
// TODO: read error message from exception
OC.Notification.showTemporary(
- t('files', 'Storage not available')
+ t('files', 'Storage is temporarily not available')
);
}
return false;
diff --git a/apps/files/tests/js/filelistSpec.js b/apps/files/tests/js/filelistSpec.js
index 304f8438a59..16605927569 100644
--- a/apps/files/tests/js/filelistSpec.js
+++ b/apps/files/tests/js/filelistSpec.js
@@ -2668,7 +2668,7 @@ describe('OCA.Files.FileList tests', function() {
});
it('redirects to root folder and shows notification in case of storage not available', function () {
expect(notificationStub.notCalled).toEqual(true);
- deferredList.reject(503, 'Storage not available');
+ deferredList.reject(503, 'Storage is temporarily not available');
expect(fileList.getCurrentDirectory()).toEqual('/');
expect(getFolderContentsStub.calledTwice).toEqual(true);