summaryrefslogtreecommitdiff
path: root/bin/wiki/vendor/guzzlehttp/guzzle/src/Exception
diff options
context:
space:
mode:
Diffstat (limited to 'bin/wiki/vendor/guzzlehttp/guzzle/src/Exception')
-rw-r--r--bin/wiki/vendor/guzzlehttp/guzzle/src/Exception/BadResponseException.php27
-rw-r--r--bin/wiki/vendor/guzzlehttp/guzzle/src/Exception/ClientException.php7
-rw-r--r--bin/wiki/vendor/guzzlehttp/guzzle/src/Exception/ConnectException.php37
-rw-r--r--bin/wiki/vendor/guzzlehttp/guzzle/src/Exception/GuzzleException.php13
-rw-r--r--bin/wiki/vendor/guzzlehttp/guzzle/src/Exception/RequestException.php217
-rw-r--r--bin/wiki/vendor/guzzlehttp/guzzle/src/Exception/SeekException.php27
-rw-r--r--bin/wiki/vendor/guzzlehttp/guzzle/src/Exception/ServerException.php7
-rw-r--r--bin/wiki/vendor/guzzlehttp/guzzle/src/Exception/TooManyRedirectsException.php4
-rw-r--r--bin/wiki/vendor/guzzlehttp/guzzle/src/Exception/TransferException.php4
9 files changed, 343 insertions, 0 deletions
diff --git a/bin/wiki/vendor/guzzlehttp/guzzle/src/Exception/BadResponseException.php b/bin/wiki/vendor/guzzlehttp/guzzle/src/Exception/BadResponseException.php
new file mode 100644
index 00000000..427d896f
--- /dev/null
+++ b/bin/wiki/vendor/guzzlehttp/guzzle/src/Exception/BadResponseException.php
@@ -0,0 +1,27 @@
+<?php
+namespace GuzzleHttp\Exception;
+
+use Psr\Http\Message\RequestInterface;
+use Psr\Http\Message\ResponseInterface;
+
+/**
+ * Exception when an HTTP error occurs (4xx or 5xx error)
+ */
+class BadResponseException extends RequestException
+{
+ public function __construct(
+ $message,
+ RequestInterface $request,
+ ResponseInterface $response = null,
+ \Exception $previous = null,
+ array $handlerContext = []
+ ) {
+ if (null === $response) {
+ @trigger_error(
+ 'Instantiating the ' . __CLASS__ . ' class without a Response is deprecated since version 6.3 and will be removed in 7.0.',
+ E_USER_DEPRECATED
+ );
+ }
+ parent::__construct($message, $request, $response, $previous, $handlerContext);
+ }
+}
diff --git a/bin/wiki/vendor/guzzlehttp/guzzle/src/Exception/ClientException.php b/bin/wiki/vendor/guzzlehttp/guzzle/src/Exception/ClientException.php
new file mode 100644
index 00000000..f95c09f2
--- /dev/null
+++ b/bin/wiki/vendor/guzzlehttp/guzzle/src/Exception/ClientException.php
@@ -0,0 +1,7 @@
+<?php
+namespace GuzzleHttp\Exception;
+
+/**
+ * Exception when a client error is encountered (4xx codes)
+ */
+class ClientException extends BadResponseException {}
diff --git a/bin/wiki/vendor/guzzlehttp/guzzle/src/Exception/ConnectException.php b/bin/wiki/vendor/guzzlehttp/guzzle/src/Exception/ConnectException.php
new file mode 100644
index 00000000..d33b0cc1
--- /dev/null
+++ b/bin/wiki/vendor/guzzlehttp/guzzle/src/Exception/ConnectException.php
@@ -0,0 +1,37 @@
+<?php
+namespace GuzzleHttp\Exception;
+
+use Psr\Http\Message\RequestInterface;
+
+/**
+ * Exception thrown when a connection cannot be established.
+ *
+ * Note that no response is present for a ConnectException
+ */
+class ConnectException extends RequestException
+{
+ public function __construct(
+ $message,
+ RequestInterface $request,
+ \Exception $previous = null,
+ array $handlerContext = []
+ ) {
+ parent::__construct($message, $request, null, $previous, $handlerContext);
+ }
+
+ /**
+ * @return null
+ */
+ public function getResponse()
+ {
+ return null;
+ }
+
+ /**
+ * @return bool
+ */
+ public function hasResponse()
+ {
+ return false;
+ }
+}
diff --git a/bin/wiki/vendor/guzzlehttp/guzzle/src/Exception/GuzzleException.php b/bin/wiki/vendor/guzzlehttp/guzzle/src/Exception/GuzzleException.php
new file mode 100644
index 00000000..510778f6
--- /dev/null
+++ b/bin/wiki/vendor/guzzlehttp/guzzle/src/Exception/GuzzleException.php
@@ -0,0 +1,13 @@
+<?php
+namespace GuzzleHttp\Exception;
+
+/**
+ * @method string getMessage()
+ * @method \Throwable|null getPrevious()
+ * @method mixed getCode()
+ * @method string getFile()
+ * @method int getLine()
+ * @method array getTrace()
+ * @method string getTraceAsString()
+ */
+interface GuzzleException {}
diff --git a/bin/wiki/vendor/guzzlehttp/guzzle/src/Exception/RequestException.php b/bin/wiki/vendor/guzzlehttp/guzzle/src/Exception/RequestException.php
new file mode 100644
index 00000000..39de327e
--- /dev/null
+++ b/bin/wiki/vendor/guzzlehttp/guzzle/src/Exception/RequestException.php
@@ -0,0 +1,217 @@
+<?php
+namespace GuzzleHttp\Exception;
+
+use Psr\Http\Message\RequestInterface;
+use Psr\Http\Message\ResponseInterface;
+use GuzzleHttp\Promise\PromiseInterface;
+use Psr\Http\Message\UriInterface;
+
+/**
+ * HTTP Request exception
+ */
+class RequestException extends TransferException
+{
+ /** @var RequestInterface */
+ private $request;
+
+ /** @var ResponseInterface */
+ private $response;
+
+ /** @var array */
+ private $handlerContext;
+
+ public function __construct(
+ $message,
+ RequestInterface $request,
+ ResponseInterface $response = null,
+ \Exception $previous = null,
+ array $handlerContext = []
+ ) {
+ // Set the code of the exception if the response is set and not future.
+ $code = $response && !($response instanceof PromiseInterface)
+ ? $response->getStatusCode()
+ : 0;
+ parent::__construct($message, $code, $previous);
+ $this->request = $request;
+ $this->response = $response;
+ $this->handlerContext = $handlerContext;
+ }
+
+ /**
+ * Wrap non-RequestExceptions with a RequestException
+ *
+ * @param RequestInterface $request
+ * @param \Exception $e
+ *
+ * @return RequestException
+ */
+ public static function wrapException(RequestInterface $request, \Exception $e)
+ {
+ return $e instanceof RequestException
+ ? $e
+ : new RequestException($e->getMessage(), $request, null, $e);
+ }
+
+ /**
+ * Factory method to create a new exception with a normalized error message
+ *
+ * @param RequestInterface $request Request
+ * @param ResponseInterface $response Response received
+ * @param \Exception $previous Previous exception
+ * @param array $ctx Optional handler context.
+ *
+ * @return self
+ */
+ public static function create(
+ RequestInterface $request,
+ ResponseInterface $response = null,
+ \Exception $previous = null,
+ array $ctx = []
+ ) {
+ if (!$response) {
+ return new self(
+ 'Error completing request',
+ $request,
+ null,
+ $previous,
+ $ctx
+ );
+ }
+
+ $level = (int) floor($response->getStatusCode() / 100);
+ if ($level === 4) {
+ $label = 'Client error';
+ $className = ClientException::class;
+ } elseif ($level === 5) {
+ $label = 'Server error';
+ $className = ServerException::class;
+ } else {
+ $label = 'Unsuccessful request';
+ $className = __CLASS__;
+ }
+
+ $uri = $request->getUri();
+ $uri = static::obfuscateUri($uri);
+
+ // Client Error: `GET /` resulted in a `404 Not Found` response:
+ // <html> ... (truncated)
+ $message = sprintf(
+ '%s: `%s %s` resulted in a `%s %s` response',
+ $label,
+ $request->getMethod(),
+ $uri,
+ $response->getStatusCode(),
+ $response->getReasonPhrase()
+ );
+
+ $summary = static::getResponseBodySummary($response);
+
+ if ($summary !== null) {
+ $message .= ":\n{$summary}\n";
+ }
+
+ return new $className($message, $request, $response, $previous, $ctx);
+ }
+
+ /**
+ * Get a short summary of the response
+ *
+ * Will return `null` if the response is not printable.
+ *
+ * @param ResponseInterface $response
+ *
+ * @return string|null
+ */
+ public static function getResponseBodySummary(ResponseInterface $response)
+ {
+ $body = $response->getBody();
+
+ if (!$body->isSeekable()) {
+ return null;
+ }
+
+ $size = $body->getSize();
+
+ if ($size === 0) {
+ return null;
+ }
+
+ $summary = $body->read(120);
+ $body->rewind();
+
+ if ($size > 120) {
+ $summary .= ' (truncated...)';
+ }
+
+ // Matches any printable character, including unicode characters:
+ // letters, marks, numbers, punctuation, spacing, and separators.
+ if (preg_match('/[^\pL\pM\pN\pP\pS\pZ\n\r\t]/', $summary)) {
+ return null;
+ }
+
+ return $summary;
+ }
+
+ /**
+ * Obfuscates URI if there is an username and a password present
+ *
+ * @param UriInterface $uri
+ *
+ * @return UriInterface
+ */
+ private static function obfuscateUri($uri)
+ {
+ $userInfo = $uri->getUserInfo();
+
+ if (false !== ($pos = strpos($userInfo, ':'))) {
+ return $uri->withUserInfo(substr($userInfo, 0, $pos), '***');
+ }
+
+ return $uri;
+ }
+
+ /**
+ * Get the request that caused the exception
+ *
+ * @return RequestInterface
+ */
+ public function getRequest()
+ {
+ return $this->request;
+ }
+
+ /**
+ * Get the associated response
+ *
+ * @return ResponseInterface|null
+ */
+ public function getResponse()
+ {
+ return $this->response;
+ }
+
+ /**
+ * Check if a response was received
+ *
+ * @return bool
+ */
+ public function hasResponse()
+ {
+ return $this->response !== null;
+ }
+
+ /**
+ * Get contextual information about the error from the underlying handler.
+ *
+ * The contents of this array will vary depending on which handler you are
+ * using. It may also be just an empty array. Relying on this data will
+ * couple you to a specific handler, but can give more debug information
+ * when needed.
+ *
+ * @return array
+ */
+ public function getHandlerContext()
+ {
+ return $this->handlerContext;
+ }
+}
diff --git a/bin/wiki/vendor/guzzlehttp/guzzle/src/Exception/SeekException.php b/bin/wiki/vendor/guzzlehttp/guzzle/src/Exception/SeekException.php
new file mode 100644
index 00000000..a77c2892
--- /dev/null
+++ b/bin/wiki/vendor/guzzlehttp/guzzle/src/Exception/SeekException.php
@@ -0,0 +1,27 @@
+<?php
+namespace GuzzleHttp\Exception;
+
+use Psr\Http\Message\StreamInterface;
+
+/**
+ * Exception thrown when a seek fails on a stream.
+ */
+class SeekException extends \RuntimeException implements GuzzleException
+{
+ private $stream;
+
+ public function __construct(StreamInterface $stream, $pos = 0, $msg = '')
+ {
+ $this->stream = $stream;
+ $msg = $msg ?: 'Could not seek the stream to position ' . $pos;
+ parent::__construct($msg);
+ }
+
+ /**
+ * @return StreamInterface
+ */
+ public function getStream()
+ {
+ return $this->stream;
+ }
+}
diff --git a/bin/wiki/vendor/guzzlehttp/guzzle/src/Exception/ServerException.php b/bin/wiki/vendor/guzzlehttp/guzzle/src/Exception/ServerException.php
new file mode 100644
index 00000000..7cdd3408
--- /dev/null
+++ b/bin/wiki/vendor/guzzlehttp/guzzle/src/Exception/ServerException.php
@@ -0,0 +1,7 @@
+<?php
+namespace GuzzleHttp\Exception;
+
+/**
+ * Exception when a server error is encountered (5xx codes)
+ */
+class ServerException extends BadResponseException {}
diff --git a/bin/wiki/vendor/guzzlehttp/guzzle/src/Exception/TooManyRedirectsException.php b/bin/wiki/vendor/guzzlehttp/guzzle/src/Exception/TooManyRedirectsException.php
new file mode 100644
index 00000000..b60a9678
--- /dev/null
+++ b/bin/wiki/vendor/guzzlehttp/guzzle/src/Exception/TooManyRedirectsException.php
@@ -0,0 +1,4 @@
+<?php
+namespace GuzzleHttp\Exception;
+
+class TooManyRedirectsException extends RequestException {}
diff --git a/bin/wiki/vendor/guzzlehttp/guzzle/src/Exception/TransferException.php b/bin/wiki/vendor/guzzlehttp/guzzle/src/Exception/TransferException.php
new file mode 100644
index 00000000..b92071ca
--- /dev/null
+++ b/bin/wiki/vendor/guzzlehttp/guzzle/src/Exception/TransferException.php
@@ -0,0 +1,4 @@
+<?php
+namespace GuzzleHttp\Exception;
+
+class TransferException extends \RuntimeException implements GuzzleException {}