From 6e85a18678a0404b657e67e8515f962fe38a6a5e Mon Sep 17 00:00:00 2001 From: fabrixxm Date: Thu, 29 Nov 2018 08:34:00 +0100 Subject: [PATCH] Storage: throw StorageException on errors --- src/Model/Storage/Filesystem.php | 8 ++++---- src/Model/Storage/StorageException.php | 15 +++++++++++++++ 2 files changed, 19 insertions(+), 4 deletions(-) create mode 100644 src/Model/Storage/StorageException.php diff --git a/src/Model/Storage/Filesystem.php b/src/Model/Storage/Filesystem.php index 07af0f135..1cfb5effe 100644 --- a/src/Model/Storage/Filesystem.php +++ b/src/Model/Storage/Filesystem.php @@ -58,13 +58,13 @@ class Filesystem implements IStorage if (!is_dir($path)) { if (!mkdir($path, 0770, true)) { Logger::log("Failed to create dirs {$path}"); - echo L10n::t("Filesystem storage failed to create '%s'. Check you write permissions.", $path); + throw new StorageException(L10n::t("Filesystem storage failed to create '%s'. Check you write permissions.", $path)); killme(); } } $base = self::getBasePath(); - + while ($path !== $base) { if (!is_file($path . "/index.html")) { file_put_contents($path . "/index.html", ""); @@ -98,7 +98,7 @@ class Filesystem implements IStorage $r = file_put_contents($file, $data); if ($r === FALSE) { Logger::log("Failed to write data to {$file}"); - echo L10n::t("Filesystem storage failed to save data to '%s'. Check your write permissions", $file); + throw new StorageException(L10n::t("Filesystem storage failed to save data to '%s'. Check your write permissions", $file)); killme(); } return $ref; @@ -108,7 +108,7 @@ class Filesystem implements IStorage { $file = self::pathForRef($ref); // return true if file doesn't exists. we want to delete it: success with zero work! - if (!is_file($file)) { + if (!is_file($file)) { return true; } return unlink($file); diff --git a/src/Model/Storage/StorageException.php b/src/Model/Storage/StorageException.php new file mode 100644 index 000000000..4321bc1ce --- /dev/null +++ b/src/Model/Storage/StorageException.php @@ -0,0 +1,15 @@ + +