diff options
author | Andrew Dolgov <[email protected]> | 2022-11-23 21:14:33 +0300 |
---|---|---|
committer | Andrew Dolgov <[email protected]> | 2022-11-23 21:14:33 +0300 |
commit | 0c8af4992cb0f7589dcafaad65ada12753c64594 (patch) | |
tree | 18e83d068c3e7dd2499331de977782b382279396 /vendor/aws/aws-sdk-php/src/S3/Exception |
initial
Diffstat (limited to 'vendor/aws/aws-sdk-php/src/S3/Exception')
4 files changed, 165 insertions, 0 deletions
diff --git a/vendor/aws/aws-sdk-php/src/S3/Exception/DeleteMultipleObjectsException.php b/vendor/aws/aws-sdk-php/src/S3/Exception/DeleteMultipleObjectsException.php new file mode 100644 index 0000000..5b4c289 --- /dev/null +++ b/vendor/aws/aws-sdk-php/src/S3/Exception/DeleteMultipleObjectsException.php @@ -0,0 +1,68 @@ +<?php +namespace Aws\S3\Exception; + +use Aws\HasMonitoringEventsTrait; +use Aws\MonitoringEventsInterface; + +/** + * Exception thrown when errors occur while deleting objects using a + * {@see S3\BatchDelete} object. + */ +class DeleteMultipleObjectsException extends \Exception implements + MonitoringEventsInterface +{ + use HasMonitoringEventsTrait; + + private $deleted = []; + private $errors = []; + + /** + * @param array $deleted Array of successfully deleted keys + * @param array $errors Array of errors that were encountered + */ + public function __construct(array $deleted, array $errors) + { + $this->deleted = array_values($deleted); + $this->errors = array_values($errors); + parent::__construct('Unable to delete certain keys when executing a' + . ' DeleteMultipleObjects request: ' + . self::createMessageFromErrors($errors)); + } + + /** + * Create a single error message from multiple errors. + * + * @param array $errors Errors encountered + * + * @return string + */ + public static function createMessageFromErrors(array $errors) + { + return "\n- " . implode("\n- ", array_map(function ($key) { + return json_encode($key); + }, $errors)); + } + + /** + * Get the errored objects + * + * @return array Returns an array of associative arrays, each containing + * a 'Code', 'Message', and 'Key' key. + */ + public function getErrors() + { + return $this->errors; + } + + /** + * Get the successfully deleted objects + * + * @return array Returns an array of associative arrays, each containing + * a 'Key' and optionally 'DeleteMarker' and + * 'DeleterMarkerVersionId' + */ + public function getDeleted() + { + return $this->deleted; + } +} diff --git a/vendor/aws/aws-sdk-php/src/S3/Exception/PermanentRedirectException.php b/vendor/aws/aws-sdk-php/src/S3/Exception/PermanentRedirectException.php new file mode 100644 index 0000000..67d916e --- /dev/null +++ b/vendor/aws/aws-sdk-php/src/S3/Exception/PermanentRedirectException.php @@ -0,0 +1,4 @@ +<?php +namespace Aws\S3\Exception; + +class PermanentRedirectException extends S3Exception {} diff --git a/vendor/aws/aws-sdk-php/src/S3/Exception/S3Exception.php b/vendor/aws/aws-sdk-php/src/S3/Exception/S3Exception.php new file mode 100644 index 0000000..7ee3caa --- /dev/null +++ b/vendor/aws/aws-sdk-php/src/S3/Exception/S3Exception.php @@ -0,0 +1,9 @@ +<?php +namespace Aws\S3\Exception; + +use Aws\Exception\AwsException; + +/** + * Represents an error interacting with the Amazon Simple Storage Service. + */ +class S3Exception extends AwsException {} diff --git a/vendor/aws/aws-sdk-php/src/S3/Exception/S3MultipartUploadException.php b/vendor/aws/aws-sdk-php/src/S3/Exception/S3MultipartUploadException.php new file mode 100644 index 0000000..957e472 --- /dev/null +++ b/vendor/aws/aws-sdk-php/src/S3/Exception/S3MultipartUploadException.php @@ -0,0 +1,84 @@ +<?php +namespace Aws\S3\Exception; + +use Aws\CommandInterface; +use Aws\Exception\AwsException; +use Aws\Multipart\UploadState; + +class S3MultipartUploadException extends \Aws\Exception\MultipartUploadException +{ + /** @var string Bucket of the transfer object */ + private $bucket; + /** @var string Key of the transfer object */ + private $key; + /** @var string Source file name of the transfer object */ + private $filename; + + /** + * @param UploadState $state Upload state at time of the exception. + * @param \Exception|array $prev Exception being thrown. Could be an array of + * AwsExceptions being thrown when uploading parts + * for one object, or an instance of AwsException + * for a specific Multipart error being thrown in + * the MultipartUpload process. + */ + public function __construct(UploadState $state, $prev = null) { + if (is_array($prev) && $error = $prev[key($prev)]) { + $this->collectPathInfo($error->getCommand()); + } elseif ($prev instanceof AwsException) { + $this->collectPathInfo($prev->getCommand()); + } + parent::__construct($state, $prev); + } + + /** + * Get the Bucket information of the transfer object + * + * @return string|null Returns null when 'Bucket' information + * is unavailable. + */ + public function getBucket() + { + return $this->bucket; + } + + /** + * Get the Key information of the transfer object + * + * @return string|null Returns null when 'Key' information + * is unavailable. + */ + public function getKey() + { + return $this->key; + } + + /** + * Get the source file name of the transfer object + * + * @return string|null Returns null when metadata of the stream + * wrapped in 'Body' parameter is unavailable. + */ + public function getSourceFileName() + { + return $this->filename; + } + + /** + * Collect file path information when accessible. (Bucket, Key) + * + * @param CommandInterface $cmd + */ + private function collectPathInfo(CommandInterface $cmd) + { + if (empty($this->bucket) && isset($cmd['Bucket'])) { + $this->bucket = $cmd['Bucket']; + } + if (empty($this->key) && isset($cmd['Key'])) { + $this->key = $cmd['Key']; + } + if (empty($this->filename) && isset($cmd['Body'])) { + $this->filename = $cmd['Body']->getMetadata('uri'); + } + } +} |