diff options
author | Jesús Macias <jmacias@solidgear.es> | 2015-11-25 11:58:54 +0100 |
---|---|---|
committer | Morris Jobke <hey@morrisjobke.de> | 2015-12-03 09:57:54 +0100 |
commit | b17f26834df37819656b83936c34d8957c344fac (patch) | |
tree | 38ac3f18c04814135567d59a3db09567f2889bb2 /apps/files_external | |
parent | c6bda8d6caf910cecc15adb0ef81ec96eafdfada (diff) | |
download | nextcloud-server-b17f26834df37819656b83936c34d8957c344fac.tar.gz nextcloud-server-b17f26834df37819656b83936c34d8957c344fac.zip |
Add different storage status codes managed by StoragedNotAvailableException
Diffstat (limited to 'apps/files_external')
-rw-r--r-- | apps/files_external/controller/storagescontroller.php | 42 | ||||
-rw-r--r-- | apps/files_external/lib/config.php | 4 |
2 files changed, 42 insertions, 4 deletions
diff --git a/apps/files_external/controller/storagescontroller.php b/apps/files_external/controller/storagescontroller.php index c66bd902d8d..7efe7611407 100644 --- a/apps/files_external/controller/storagescontroller.php +++ b/apps/files_external/controller/storagescontroller.php @@ -242,10 +242,44 @@ abstract class StoragesController extends Controller { $this->l10n->t('Insufficient data: %s', [$e->getMessage()]) ); } catch (StorageNotAvailableException $e) { - $storage->setStatus( - \OC_Mount_Config::STATUS_ERROR, - $e->getMessage() - ); + switch ($e->getCode()) { + case 1: + $storage->setStatus( + \OC_Mount_Config::STATUS_ERROR, + $this->l10n->t('%s', [$e->getMessage()]) + ); + break; + case 3: + $storage->setStatus( + \OC_Mount_Config::STATUS_INCOMPLETE_CONF, + $this->l10n->t('Incomplete configuration. %s', [$e->getMessage()]) + ); + break; + case 4: + $storage->setStatus( + \OC_Mount_Config::STATUS_UNAUTHORIZED, + $this->l10n->t('Unauthorized. %s', [$e->getMessage()]) + $e->getMessage() + ); + break; + case 5: + $storage->setStatus( + \OC_Mount_Config::STATUS_TIMEOUT, + $this->l10n->t('Timeout. %s', [$e->getMessage()]) + ); + break; + case 6: + $storage->setStatus( + \OC_Mount_Config::STATUS_NETWORK_ERROR, + $this->l10n->t('Network error. %s', [$e->getMessage()]) + ); + break; + default: + $storage->setStatus( + \OC_Mount_Config::STATUS_ERROR, + $this->l10n->t('%s', [$e->getMessage()]) + ); + } } catch (\Exception $e) { // FIXME: convert storage exceptions to StorageNotAvailableException $storage->setStatus( diff --git a/apps/files_external/lib/config.php b/apps/files_external/lib/config.php index 1e96fac8145..bf507233035 100644 --- a/apps/files_external/lib/config.php +++ b/apps/files_external/lib/config.php @@ -52,6 +52,10 @@ class OC_Mount_Config { const STATUS_SUCCESS = 0; const STATUS_ERROR = 1; const STATUS_INDETERMINATE = 2; + const STATUS_INCOMPLETE_CONF = 3; + const STATUS_UNAUTHORIZED = 4; + const STATUS_TIMEOUT = 5; + const STATUS_NETWORK_ERROR = 6; // whether to skip backend test (for unit tests, as this static class is not mockable) public static $skipTest = false; |