Skip to content

Commit 1ac3c8d

Browse files
committed
Fix throwing exception typ of temporaryUrl
1 parent 68c9653 commit 1ac3c8d

File tree

1 file changed

+10
-4
lines changed

1 file changed

+10
-4
lines changed

src/AzureBlobStorageAdapter.php

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
namespace AzureOss\FlysystemAzureBlobStorage;
66

77
use AzureOss\Storage\Blob\BlobContainerClient;
8+
use AzureOss\Storage\Blob\Exceptions\UnableToGenerateSasException;
89
use AzureOss\Storage\Blob\Models\Blob;
910
use AzureOss\Storage\Blob\Models\BlobProperties;
1011
use AzureOss\Storage\Blob\Models\GetBlobsOptions;
@@ -21,6 +22,7 @@
2122
use League\Flysystem\UnableToCopyFile;
2223
use League\Flysystem\UnableToDeleteDirectory;
2324
use League\Flysystem\UnableToDeleteFile;
25+
use League\Flysystem\UnableToGenerateTemporaryUrl;
2426
use League\Flysystem\UnableToListContents;
2527
use League\Flysystem\UnableToMoveFile;
2628
use League\Flysystem\UnableToProvideChecksum;
@@ -367,16 +369,20 @@ public function temporaryUrl(string $path, \DateTimeInterface $expiresAt, Config
367369
{
368370
$permissions = $config->get("permissions", "r");
369371
if (!is_string($permissions)) {
370-
throw new \InvalidArgumentException("permissions must be a string!");
372+
throw new UnableToGenerateTemporaryUrl("permissions must be a string!", $path);
371373
}
372374

373375
$sasBuilder = BlobSasBuilder::new()
374376
->setExpiresOn($expiresAt)
375377
->setPermissions($permissions);
376378

377-
$sas = $this->containerClient
378-
->getBlobClient($this->prefixer->prefixPath($path))
379-
->generateSasUri($sasBuilder);
379+
try {
380+
$sas = $this->containerClient
381+
->getBlobClient($this->prefixer->prefixPath($path))
382+
->generateSasUri($sasBuilder);
383+
} catch (UnableToGenerateSasException $exception) {
384+
throw new UnableToGenerateTemporaryUrl($exception->getMessage(), $path, $exception);
385+
}
380386

381387
return (string) $sas;
382388
}

0 commit comments

Comments
 (0)