Pass on the return value of file_put_contenttags/v14.0.0beta1
@@ -139,6 +139,7 @@ return array( | |||
'OCP\\Files\\FileNameTooLongException' => $baseDir . '/lib/public/Files/FileNameTooLongException.php', | |||
'OCP\\Files\\Folder' => $baseDir . '/lib/public/Files/Folder.php', | |||
'OCP\\Files\\ForbiddenException' => $baseDir . '/lib/public/Files/ForbiddenException.php', | |||
'OCP\\Files\\GenericFileException' => $baseDir . '/lib/public/Files/GenericFileException.php', | |||
'OCP\\Files\\IAppData' => $baseDir . '/lib/public/Files/IAppData.php', | |||
'OCP\\Files\\IHomeStorage' => $baseDir . '/lib/public/Files/IHomeStorage.php', | |||
'OCP\\Files\\IMimeTypeDetector' => $baseDir . '/lib/public/Files/IMimeTypeDetector.php', |
@@ -169,6 +169,7 @@ class ComposerStaticInit53792487c5a8370acc0b06b1a864ff4c | |||
'OCP\\Files\\FileNameTooLongException' => __DIR__ . '/../../..' . '/lib/public/Files/FileNameTooLongException.php', | |||
'OCP\\Files\\Folder' => __DIR__ . '/../../..' . '/lib/public/Files/Folder.php', | |||
'OCP\\Files\\ForbiddenException' => __DIR__ . '/../../..' . '/lib/public/Files/ForbiddenException.php', | |||
'OCP\\Files\\GenericFileException' => __DIR__ . '/../../..' . '/lib/public/Files/GenericFileException.php', | |||
'OCP\\Files\\IAppData' => __DIR__ . '/../../..' . '/lib/public/Files/IAppData.php', | |||
'OCP\\Files\\IHomeStorage' => __DIR__ . '/../../..' . '/lib/public/Files/IHomeStorage.php', | |||
'OCP\\Files\\IMimeTypeDetector' => __DIR__ . '/../../..' . '/lib/public/Files/IMimeTypeDetector.php', |
@@ -26,6 +26,7 @@ | |||
namespace OC\Files\Node; | |||
use OCP\Files\GenericFileException; | |||
use OCP\Files\NotPermittedException; | |||
class File extends Node implements \OCP\Files\File { | |||
@@ -57,11 +58,14 @@ class File extends Node implements \OCP\Files\File { | |||
/** | |||
* @param string $data | |||
* @throws \OCP\Files\NotPermittedException | |||
* @throws \OCP\Files\GenericFileException | |||
*/ | |||
public function putContent($data) { | |||
if ($this->checkPermissions(\OCP\Constants::PERMISSION_UPDATE)) { | |||
$this->sendHooks(array('preWrite')); | |||
$this->view->file_put_contents($this->path, $data); | |||
if ($this->view->file_put_contents($this->path, $data) === false) { | |||
throw new GenericFileException('file_put_contents failed'); | |||
} | |||
$this->fileInfo = null; | |||
$this->sendHooks(array('postWrite')); | |||
} else { |
@@ -53,7 +53,7 @@ interface File extends Node { | |||
* | |||
* @param string $data | |||
* @throws \OCP\Files\NotPermittedException | |||
* @return void | |||
* @throws \OCP\Files\GenericFileException | |||
* @since 6.0.0 | |||
*/ | |||
public function putContent($data); |
@@ -0,0 +1,33 @@ | |||
<?php | |||
/** | |||
* @copyright 2018, Roeland Jago Douma <roeland@famdouma.nl> | |||
* | |||
* @author Roeland Jago Douma <roeland@famdouma.nl> | |||
* | |||
* @license GNU AGPL version 3 or any later version | |||
* | |||
* This program is free software: you can redistribute it and/or modify | |||
* it under the terms of the GNU Affero General Public License as | |||
* published by the Free Software Foundation, either version 3 of the | |||
* License, or (at your option) any later version. | |||
* | |||
* This program is distributed in the hope that it will be useful, | |||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | |||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |||
* GNU Affero General Public License for more details. | |||
* | |||
* You should have received a copy of the GNU Affero General Public License | |||
* along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
* | |||
*/ | |||
namespace OCP\Files; | |||
/** | |||
* Class GenericFileException | |||
* | |||
* @package OCP\Files | |||
* @since 14.0.0 | |||
*/ | |||
class GenericFileException extends \Exception { | |||
} |