/** * @param File[] $files * * @throws CanNotSavedException * * @return File[] */ public function save($files) { $amazonAdapter = $this->getAdapter(); $savedFiles = []; $i = 0; foreach ($files as $file) { $i++; $filePath = $this->fileNameResolver->resolve(new \DateTime('now', new \DateTimeZone('UTC')), 'database', $file->getExtension()); $resource = fopen($file->getPath(), 'r'); $amazonAnswer = $amazonAdapter->writeStream($filePath, $resource, new Config()); fclose($resource); if ($amazonAnswer === false) { throw new CanNotSavedException(); } $savedFiles[] = new File($amazonAnswer['path']); } return $savedFiles; }
/** * @param File[] $files * * @throws CanNotSavedException * * @return File[] */ public function save($files) { $fileSystemAdapter = $this->getAdapter(); $fileSystem = new Filesystem($fileSystemAdapter); $savedFiles = []; $i = 0; foreach ($files as $file) { $i++; $filePath = $this->fileNameResolver->resolve(new \DateTime('now', new \DateTimeZone('UTC')), 'database', $file->getExtension()); $newBackupLocation = $this->backupFolder . '/' . $filePath; $currBackupLocation = $file->getPath(); if ($fileSystem->has($newBackupLocation)) { $fileSystem->delete($newBackupLocation); } if (!$fileSystem->rename($currBackupLocation, $newBackupLocation)) { throw new CanNotSavedException(); } $savedFiles[] = new File($fileSystemAdapter->applyPathPrefix($newBackupLocation)); } return $savedFiles; }
/** * @param File[] $files * * @throws CanNotSavedException * * @return File[] */ public function save($files) { $fileSystemAdapter = $this->getAdapter(); $fileSystem = new Filesystem($fileSystemAdapter); $savedFiles = []; $i = 0; foreach ($files as $file) { $i++; $saveLocation = $this->fileNameResolver->resolve(new \DateTime('now', new \DateTimeZone('UTC')), 'database', $file->getExtension()); if ($fileSystem->has($saveLocation)) { $fileSystem->delete($saveLocation); } $stream = fopen($file->getPath(), 'r+'); $uploadFile = $fileSystem->writeStream($saveLocation, $stream); fclose($stream); if (!$uploadFile) { throw new CanNotSavedException(); } $savedFiles[] = new File($fileSystemAdapter->applyPathPrefix($saveLocation)); } return $savedFiles; }