summaryrefslogtreecommitdiff
path: root/vendor/aws/aws-sdk-php/src/Exception
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2022-11-23 21:14:33 +0300
committerAndrew Dolgov <[email protected]>2022-11-23 21:14:33 +0300
commit0c8af4992cb0f7589dcafaad65ada12753c64594 (patch)
tree18e83d068c3e7dd2499331de977782b382279396 /vendor/aws/aws-sdk-php/src/Exception
initial
Diffstat (limited to 'vendor/aws/aws-sdk-php/src/Exception')
-rw-r--r--vendor/aws/aws-sdk-php/src/Exception/AwsException.php270
-rw-r--r--vendor/aws/aws-sdk-php/src/Exception/CommonRuntimeException.php7
-rw-r--r--vendor/aws/aws-sdk-php/src/Exception/CouldNotCreateChecksumException.php25
-rw-r--r--vendor/aws/aws-sdk-php/src/Exception/CredentialsException.php11
-rw-r--r--vendor/aws/aws-sdk-php/src/Exception/CryptoException.php11
-rw-r--r--vendor/aws/aws-sdk-php/src/Exception/CryptoPolyfillException.php11
-rw-r--r--vendor/aws/aws-sdk-php/src/Exception/EventStreamDataException.php38
-rw-r--r--vendor/aws/aws-sdk-php/src/Exception/IncalculablePayloadException.php11
-rw-r--r--vendor/aws/aws-sdk-php/src/Exception/InvalidJsonException.php11
-rw-r--r--vendor/aws/aws-sdk-php/src/Exception/InvalidRegionException.php11
-rw-r--r--vendor/aws/aws-sdk-php/src/Exception/MultipartUploadException.php63
-rw-r--r--vendor/aws/aws-sdk-php/src/Exception/TokenException.php11
-rw-r--r--vendor/aws/aws-sdk-php/src/Exception/UnresolvedApiException.php11
-rw-r--r--vendor/aws/aws-sdk-php/src/Exception/UnresolvedEndpointException.php11
-rw-r--r--vendor/aws/aws-sdk-php/src/Exception/UnresolvedSignatureException.php11
15 files changed, 513 insertions, 0 deletions
diff --git a/vendor/aws/aws-sdk-php/src/Exception/AwsException.php b/vendor/aws/aws-sdk-php/src/Exception/AwsException.php
new file mode 100644
index 0000000..2873d29
--- /dev/null
+++ b/vendor/aws/aws-sdk-php/src/Exception/AwsException.php
@@ -0,0 +1,270 @@
+<?php
+namespace Aws\Exception;
+
+use Aws\Api\Shape;
+use Aws\CommandInterface;
+use Aws\HasDataTrait;
+use Aws\HasMonitoringEventsTrait;
+use Aws\MonitoringEventsInterface;
+use Aws\ResponseContainerInterface;
+use Aws\ResultInterface;
+use JmesPath\Env as JmesPath;
+use Psr\Http\Message\ResponseInterface;
+use Psr\Http\Message\RequestInterface;
+
+/**
+ * Represents an AWS exception that is thrown when a command fails.
+ */
+class AwsException extends \RuntimeException implements
+ MonitoringEventsInterface,
+ ResponseContainerInterface,
+ \ArrayAccess
+{
+ use HasDataTrait;
+ use HasMonitoringEventsTrait;
+
+ /** @var ResponseInterface */
+ private $response;
+ private $request;
+ private $result;
+ private $command;
+ private $requestId;
+ private $errorType;
+ private $errorCode;
+ private $errorShape;
+ private $connectionError;
+ private $transferInfo;
+ private $errorMessage;
+ private $maxRetriesExceeded;
+
+
+ /**
+ * @param string $message Exception message
+ * @param CommandInterface $command
+ * @param array $context Exception context
+ * @param \Exception $previous Previous exception (if any)
+ */
+ public function __construct(
+ $message,
+ CommandInterface $command,
+ array $context = [],
+ \Exception $previous = null
+ ) {
+ $this->data = isset($context['body']) ? $context['body'] : [];
+ $this->command = $command;
+ $this->response = isset($context['response']) ? $context['response'] : null;
+ $this->request = isset($context['request']) ? $context['request'] : null;
+ $this->requestId = isset($context['request_id'])
+ ? $context['request_id']
+ : null;
+ $this->errorType = isset($context['type']) ? $context['type'] : null;
+ $this->errorCode = isset($context['code']) ? $context['code'] : null;
+ $this->errorShape = isset($context['error_shape']) ? $context['error_shape'] : null;
+ $this->connectionError = !empty($context['connection_error']);
+ $this->result = isset($context['result']) ? $context['result'] : null;
+ $this->transferInfo = isset($context['transfer_stats'])
+ ? $context['transfer_stats']
+ : [];
+ $this->errorMessage = isset($context['message'])
+ ? $context['message']
+ : null;
+ $this->monitoringEvents = [];
+ $this->maxRetriesExceeded = false;
+ parent::__construct($message, 0, $previous);
+ }
+
+ public function __toString()
+ {
+ if (!$this->getPrevious()) {
+ return parent::__toString();
+ }
+
+ // PHP strangely shows the innermost exception first before the outer
+ // exception message. It also has a default character limit for
+ // exception message strings such that the "next" exception (this one)
+ // might not even get shown, causing developers to attempt to catch
+ // the inner exception instead of the actual exception because they
+ // can't see the outer exception's __toString output.
+ return sprintf(
+ "exception '%s' with message '%s'\n\n%s",
+ get_class($this),
+ $this->getMessage(),
+ parent::__toString()
+ );
+ }
+
+ /**
+ * Get the command that was executed.
+ *
+ * @return CommandInterface
+ */
+ public function getCommand()
+ {
+ return $this->command;
+ }
+
+ /**
+ * Get the concise error message if any.
+ *
+ * @return string|null
+ */
+ public function getAwsErrorMessage()
+ {
+ return $this->errorMessage;
+ }
+
+ /**
+ * Get the sent HTTP request if any.
+ *
+ * @return RequestInterface|null
+ */
+ public function getRequest()
+ {
+ return $this->request;
+ }
+
+ /**
+ * Get the received HTTP response if any.
+ *
+ * @return ResponseInterface|null
+ */
+ public function getResponse()
+ {
+ return $this->response;
+ }
+
+ /**
+ * Get the result of the exception if available
+ *
+ * @return ResultInterface|null
+ */
+ public function getResult()
+ {
+ return $this->result;
+ }
+
+ /**
+ * Returns true if this is a connection error.
+ *
+ * @return bool
+ */
+ public function isConnectionError()
+ {
+ return $this->connectionError;
+ }
+
+ /**
+ * If available, gets the HTTP status code of the corresponding response
+ *
+ * @return int|null
+ */
+ public function getStatusCode()
+ {
+ return $this->response ? $this->response->getStatusCode() : null;
+ }
+
+ /**
+ * Get the request ID of the error. This value is only present if a
+ * response was received and is not present in the event of a networking
+ * error.
+ *
+ * @return string|null Returns null if no response was received
+ */
+ public function getAwsRequestId()
+ {
+ return $this->requestId;
+ }
+
+ /**
+ * Get the AWS error type.
+ *
+ * @return string|null Returns null if no response was received
+ */
+ public function getAwsErrorType()
+ {
+ return $this->errorType;
+ }
+
+ /**
+ * Get the AWS error code.
+ *
+ * @return string|null Returns null if no response was received
+ */
+ public function getAwsErrorCode()
+ {
+ return $this->errorCode;
+ }
+
+ /**
+ * Get the AWS error shape.
+ *
+ * @return Shape|null Returns null if no response was received
+ */
+ public function getAwsErrorShape()
+ {
+ return $this->errorShape;
+ }
+
+ /**
+ * Get all transfer information as an associative array if no $name
+ * argument is supplied, or gets a specific transfer statistic if
+ * a $name attribute is supplied (e.g., 'retries_attempted').
+ *
+ * @param string $name Name of the transfer stat to retrieve
+ *
+ * @return mixed|null|array
+ */
+ public function getTransferInfo($name = null)
+ {
+ if (!$name) {
+ return $this->transferInfo;
+ }
+
+ return isset($this->transferInfo[$name])
+ ? $this->transferInfo[$name]
+ : null;
+ }
+
+ /**
+ * Replace the transfer information associated with an exception.
+ *
+ * @param array $info
+ */
+ public function setTransferInfo(array $info)
+ {
+ $this->transferInfo = $info;
+ }
+
+ /**
+ * Returns whether the max number of retries is exceeded.
+ *
+ * @return bool
+ */
+ public function isMaxRetriesExceeded()
+ {
+ return $this->maxRetriesExceeded;
+ }
+
+ /**
+ * Sets the flag for max number of retries exceeded.
+ */
+ public function setMaxRetriesExceeded()
+ {
+ $this->maxRetriesExceeded = true;
+ }
+
+ public function hasKey($name)
+ {
+ return isset($this->data[$name]);
+ }
+
+ public function get($key)
+ {
+ return $this[$key];
+ }
+
+ public function search($expression)
+ {
+ return JmesPath::search($expression, $this->toArray());
+ }
+}
diff --git a/vendor/aws/aws-sdk-php/src/Exception/CommonRuntimeException.php b/vendor/aws/aws-sdk-php/src/Exception/CommonRuntimeException.php
new file mode 100644
index 0000000..d17cd3a
--- /dev/null
+++ b/vendor/aws/aws-sdk-php/src/Exception/CommonRuntimeException.php
@@ -0,0 +1,7 @@
+<?php
+namespace Aws\Exception;
+
+class CommonRuntimeException extends \RuntimeException
+{
+
+}
diff --git a/vendor/aws/aws-sdk-php/src/Exception/CouldNotCreateChecksumException.php b/vendor/aws/aws-sdk-php/src/Exception/CouldNotCreateChecksumException.php
new file mode 100644
index 0000000..5c5f80e
--- /dev/null
+++ b/vendor/aws/aws-sdk-php/src/Exception/CouldNotCreateChecksumException.php
@@ -0,0 +1,25 @@
+<?php
+namespace Aws\Exception;
+
+use Aws\HasMonitoringEventsTrait;
+use Aws\MonitoringEventsInterface;
+
+class CouldNotCreateChecksumException extends \RuntimeException implements
+ MonitoringEventsInterface
+{
+ use HasMonitoringEventsTrait;
+
+ public function __construct($algorithm, \Exception $previous = null)
+ {
+ $prefix = $algorithm === 'md5' ? "An" : "A";
+ parent::__construct("{$prefix} {$algorithm} checksum could not be "
+ . "calculated for the provided upload body, because it was not "
+ . "seekable. To prevent this error you can either 1) include the "
+ . "ContentMD5 or ContentSHA256 parameters with your request, 2) "
+ . "use a seekable stream for the body, or 3) wrap the non-seekable "
+ . "stream in a GuzzleHttp\\Psr7\\CachingStream object. You "
+ . "should be careful though and remember that the CachingStream "
+ . "utilizes PHP temp streams. This means that the stream will be "
+ . "temporarily stored on the local disk.", 0, $previous);
+ }
+}
diff --git a/vendor/aws/aws-sdk-php/src/Exception/CredentialsException.php b/vendor/aws/aws-sdk-php/src/Exception/CredentialsException.php
new file mode 100644
index 0000000..0801b62
--- /dev/null
+++ b/vendor/aws/aws-sdk-php/src/Exception/CredentialsException.php
@@ -0,0 +1,11 @@
+<?php
+namespace Aws\Exception;
+
+use Aws\HasMonitoringEventsTrait;
+use Aws\MonitoringEventsInterface;
+
+class CredentialsException extends \RuntimeException implements
+ MonitoringEventsInterface
+{
+ use HasMonitoringEventsTrait;
+}
diff --git a/vendor/aws/aws-sdk-php/src/Exception/CryptoException.php b/vendor/aws/aws-sdk-php/src/Exception/CryptoException.php
new file mode 100644
index 0000000..7cd773b
--- /dev/null
+++ b/vendor/aws/aws-sdk-php/src/Exception/CryptoException.php
@@ -0,0 +1,11 @@
+<?php
+namespace Aws\Exception;
+
+/**
+ * This class represents exceptions related to logic surrounding client-side
+ * encryption usage.
+ */
+class CryptoException extends \RuntimeException
+{
+
+}
diff --git a/vendor/aws/aws-sdk-php/src/Exception/CryptoPolyfillException.php b/vendor/aws/aws-sdk-php/src/Exception/CryptoPolyfillException.php
new file mode 100644
index 0000000..4c7f44b
--- /dev/null
+++ b/vendor/aws/aws-sdk-php/src/Exception/CryptoPolyfillException.php
@@ -0,0 +1,11 @@
+<?php
+namespace Aws\Exception;
+
+/**
+ * Class CryptoPolyfillException
+ * @package Aws\Exception
+ */
+class CryptoPolyfillException extends \RuntimeException
+{
+
+}
diff --git a/vendor/aws/aws-sdk-php/src/Exception/EventStreamDataException.php b/vendor/aws/aws-sdk-php/src/Exception/EventStreamDataException.php
new file mode 100644
index 0000000..4078595
--- /dev/null
+++ b/vendor/aws/aws-sdk-php/src/Exception/EventStreamDataException.php
@@ -0,0 +1,38 @@
+<?php
+namespace Aws\Exception;
+
+/**
+ * Represents an exception that was supplied via an EventStream.
+ */
+class EventStreamDataException extends \RuntimeException
+{
+ private $errorCode;
+ private $errorMessage;
+
+ public function __construct($code, $message)
+ {
+ $this->errorCode = $code;
+ $this->errorMessage = $message;
+ parent::__construct($message);
+ }
+
+ /**
+ * Get the AWS error code.
+ *
+ * @return string|null Returns null if no response was received
+ */
+ public function getAwsErrorCode()
+ {
+ return $this->errorCode;
+ }
+
+ /**
+ * Get the concise error message if any.
+ *
+ * @return string|null
+ */
+ public function getAwsErrorMessage()
+ {
+ return $this->errorMessage;
+ }
+}
diff --git a/vendor/aws/aws-sdk-php/src/Exception/IncalculablePayloadException.php b/vendor/aws/aws-sdk-php/src/Exception/IncalculablePayloadException.php
new file mode 100644
index 0000000..a64e742
--- /dev/null
+++ b/vendor/aws/aws-sdk-php/src/Exception/IncalculablePayloadException.php
@@ -0,0 +1,11 @@
+<?php
+namespace Aws\Exception;
+
+use Aws\HasMonitoringEventsTrait;
+use Aws\MonitoringEventsInterface;
+
+class IncalculablePayloadException extends \RuntimeException implements
+ MonitoringEventsInterface
+{
+ use HasMonitoringEventsTrait;
+}
diff --git a/vendor/aws/aws-sdk-php/src/Exception/InvalidJsonException.php b/vendor/aws/aws-sdk-php/src/Exception/InvalidJsonException.php
new file mode 100644
index 0000000..421b73e
--- /dev/null
+++ b/vendor/aws/aws-sdk-php/src/Exception/InvalidJsonException.php
@@ -0,0 +1,11 @@
+<?php
+namespace Aws\Exception;
+
+use Aws\HasMonitoringEventsTrait;
+use Aws\MonitoringEventsInterface;
+
+class InvalidJsonException extends \RuntimeException implements
+ MonitoringEventsInterface
+{
+ use HasMonitoringEventsTrait;
+}
diff --git a/vendor/aws/aws-sdk-php/src/Exception/InvalidRegionException.php b/vendor/aws/aws-sdk-php/src/Exception/InvalidRegionException.php
new file mode 100644
index 0000000..0e3cd36
--- /dev/null
+++ b/vendor/aws/aws-sdk-php/src/Exception/InvalidRegionException.php
@@ -0,0 +1,11 @@
+<?php
+namespace Aws\Exception;
+
+use Aws\HasMonitoringEventsTrait;
+use Aws\MonitoringEventsInterface;
+
+class InvalidRegionException extends \RuntimeException implements
+ MonitoringEventsInterface
+{
+ use HasMonitoringEventsTrait;
+}
diff --git a/vendor/aws/aws-sdk-php/src/Exception/MultipartUploadException.php b/vendor/aws/aws-sdk-php/src/Exception/MultipartUploadException.php
new file mode 100644
index 0000000..74e4ea2
--- /dev/null
+++ b/vendor/aws/aws-sdk-php/src/Exception/MultipartUploadException.php
@@ -0,0 +1,63 @@
+<?php
+namespace Aws\Exception;
+
+use Aws\HasMonitoringEventsTrait;
+use Aws\MonitoringEventsInterface;
+use Aws\Multipart\UploadState;
+
+class MultipartUploadException extends \RuntimeException implements
+ MonitoringEventsInterface
+{
+ use HasMonitoringEventsTrait;
+
+ /** @var UploadState State of the erroneous transfer */
+ private $state;
+
+ /**
+ * @param UploadState $state Upload state at time of the exception.
+ * @param \Exception|array $prev Exception being thrown.
+ */
+ public function __construct(UploadState $state, $prev = null) {
+ $msg = 'An exception occurred while performing a multipart upload';
+
+ if (is_array($prev)) {
+ $msg = strtr($msg, ['performing' => 'uploading parts to']);
+ $msg .= ". The following parts had errors:\n";
+ /** @var $error AwsException */
+ foreach ($prev as $part => $error) {
+ $msg .= "- Part {$part}: " . $error->getMessage(). "\n";
+ }
+ } elseif ($prev instanceof AwsException) {
+ switch ($prev->getCommand()->getName()) {
+ case 'CreateMultipartUpload':
+ case 'InitiateMultipartUpload':
+ $action = 'initiating';
+ break;
+ case 'CompleteMultipartUpload':
+ $action = 'completing';
+ break;
+ }
+ if (isset($action)) {
+ $msg = strtr($msg, ['performing' => $action]);
+ }
+ $msg .= ": {$prev->getMessage()}";
+ }
+
+ if (!$prev instanceof \Exception) {
+ $prev = null;
+ }
+
+ parent::__construct($msg, 0, $prev);
+ $this->state = $state;
+ }
+
+ /**
+ * Get the state of the transfer
+ *
+ * @return UploadState
+ */
+ public function getState()
+ {
+ return $this->state;
+ }
+}
diff --git a/vendor/aws/aws-sdk-php/src/Exception/TokenException.php b/vendor/aws/aws-sdk-php/src/Exception/TokenException.php
new file mode 100644
index 0000000..f669601
--- /dev/null
+++ b/vendor/aws/aws-sdk-php/src/Exception/TokenException.php
@@ -0,0 +1,11 @@
+<?php
+namespace Aws\Exception;
+
+use Aws\HasMonitoringEventsTrait;
+use Aws\MonitoringEventsInterface;
+
+class TokenException extends \RuntimeException implements
+ MonitoringEventsInterface
+{
+ use HasMonitoringEventsTrait;
+}
diff --git a/vendor/aws/aws-sdk-php/src/Exception/UnresolvedApiException.php b/vendor/aws/aws-sdk-php/src/Exception/UnresolvedApiException.php
new file mode 100644
index 0000000..e204571
--- /dev/null
+++ b/vendor/aws/aws-sdk-php/src/Exception/UnresolvedApiException.php
@@ -0,0 +1,11 @@
+<?php
+namespace Aws\Exception;
+
+use Aws\HasMonitoringEventsTrait;
+use Aws\MonitoringEventsInterface;
+
+class UnresolvedApiException extends \RuntimeException implements
+ MonitoringEventsInterface
+{
+ use HasMonitoringEventsTrait;
+}
diff --git a/vendor/aws/aws-sdk-php/src/Exception/UnresolvedEndpointException.php b/vendor/aws/aws-sdk-php/src/Exception/UnresolvedEndpointException.php
new file mode 100644
index 0000000..77d7419
--- /dev/null
+++ b/vendor/aws/aws-sdk-php/src/Exception/UnresolvedEndpointException.php
@@ -0,0 +1,11 @@
+<?php
+namespace Aws\Exception;
+
+use Aws\HasMonitoringEventsTrait;
+use Aws\MonitoringEventsInterface;
+
+class UnresolvedEndpointException extends \RuntimeException implements
+ MonitoringEventsInterface
+{
+ use HasMonitoringEventsTrait;
+}
diff --git a/vendor/aws/aws-sdk-php/src/Exception/UnresolvedSignatureException.php b/vendor/aws/aws-sdk-php/src/Exception/UnresolvedSignatureException.php
new file mode 100644
index 0000000..a04674c
--- /dev/null
+++ b/vendor/aws/aws-sdk-php/src/Exception/UnresolvedSignatureException.php
@@ -0,0 +1,11 @@
+<?php
+namespace Aws\Exception;
+
+use Aws\HasMonitoringEventsTrait;
+use Aws\MonitoringEventsInterface;
+
+class UnresolvedSignatureException extends \RuntimeException implements
+ MonitoringEventsInterface
+{
+ use HasMonitoringEventsTrait;
+}