summaryrefslogtreecommitdiff
path: root/server/vendor/php-opencloud/common/src/Common/Error
diff options
context:
space:
mode:
authorEoleDev <EoleDev@outlook.fr>2016-04-14 16:28:25 +0200
committerEoleDev <EoleDev@outlook.fr>2016-04-14 16:28:25 +0200
commit31d2d0c158ad4daa3dde7a905f3c2e312c194f2e (patch)
tree43d761d2aec8265a22c0fdedcc365bacc10dc814 /server/vendor/php-opencloud/common/src/Common/Error
parent27730911d8c9253a4f5aa90450c57cdeca9d5d26 (diff)
parentb348dbc2266a3e8070a3951fb0bd8c19b852ec47 (diff)
Merge branch 'compute'
Conflicts: server/core/LibOverride/genTokenOptions.php
Diffstat (limited to 'server/vendor/php-opencloud/common/src/Common/Error')
-rwxr-xr-xserver/vendor/php-opencloud/common/src/Common/Error/BadResponseError.php40
-rwxr-xr-xserver/vendor/php-opencloud/common/src/Common/Error/BaseError.php12
-rwxr-xr-xserver/vendor/php-opencloud/common/src/Common/Error/Builder.php179
-rwxr-xr-xserver/vendor/php-opencloud/common/src/Common/Error/NotImplementedError.php12
-rwxr-xr-xserver/vendor/php-opencloud/common/src/Common/Error/UserInputError.php12
5 files changed, 0 insertions, 255 deletions
diff --git a/server/vendor/php-opencloud/common/src/Common/Error/BadResponseError.php b/server/vendor/php-opencloud/common/src/Common/Error/BadResponseError.php
deleted file mode 100755
index faa7128..0000000
--- a/server/vendor/php-opencloud/common/src/Common/Error/BadResponseError.php
+++ /dev/null
@@ -1,40 +0,0 @@
-<?php declare(strict_types=1);
-
-namespace OpenCloud\Common\Error;
-
-use Psr\Http\Message\RequestInterface;
-use Psr\Http\Message\ResponseInterface;
-
-/**
- * Represents a HTTP-specific error, caused by 4xx or 5xx response statuses.
- *
- * @package OpenCloud\Common\Error
- */
-class BadResponseError extends BaseError
-{
- /** @var RequestInterface */
- private $request;
-
- /** @var ResponseInterface */
- private $response;
-
- public function setRequest(RequestInterface $request)
- {
- $this->request = $request;
- }
-
- public function setResponse(ResponseInterface $response)
- {
- $this->response = $response;
- }
-
- public function getRequest(): RequestInterface
- {
- return $this->request;
- }
-
- public function getResponse(): ResponseInterface
- {
- return $this->response;
- }
-}
diff --git a/server/vendor/php-opencloud/common/src/Common/Error/BaseError.php b/server/vendor/php-opencloud/common/src/Common/Error/BaseError.php
deleted file mode 100755
index 1776890..0000000
--- a/server/vendor/php-opencloud/common/src/Common/Error/BaseError.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php declare(strict_types=1);
-
-namespace OpenCloud\Common\Error;
-
-/**
- * Base error class.
- *
- * @package OpenCloud\Common\Error
- */
-class BaseError extends \Exception
-{
-}
diff --git a/server/vendor/php-opencloud/common/src/Common/Error/Builder.php b/server/vendor/php-opencloud/common/src/Common/Error/Builder.php
deleted file mode 100755
index f9762b7..0000000
--- a/server/vendor/php-opencloud/common/src/Common/Error/Builder.php
+++ /dev/null
@@ -1,179 +0,0 @@
-<?php declare(strict_types=1);
-
-namespace OpenCloud\Common\Error;
-
-use GuzzleHttp\Client;
-use GuzzleHttp\ClientInterface;
-use GuzzleHttp\Exception\ClientException;
-use Psr\Http\Message\MessageInterface;
-use Psr\Http\Message\RequestInterface;
-use Psr\Http\Message\ResponseInterface;
-
-/**
- * Class responsible for building meaningful exceptions. For HTTP problems, it produces a {@see HttpError}
- * exception, and supplies a error message with reasonable defaults. For user input problems, it produces a
- * {@see UserInputError} exception. For both, the problem is described, a potential solution is offered and
- * a link to further information is included.
- *
- * @package OpenCloud\Common\Error
- */
-class Builder
-{
- /**
- * The default domain to use for further link documentation.
- *
- * @var string
- */
- private $docDomain = 'http://docs.php-opencloud.com/en/latest/';
-
- /**
- * The HTTP client required to validate the further links.
- *
- * @var ClientInterface
- */
- private $client;
-
- /**
- * @param ClientInterface $client
- */
- public function __construct(ClientInterface $client = null)
- {
- $this->client = $client ?: new Client();
- }
-
- /**
- * Internal method used when outputting headers in the error description.
- *
- * @param $name
- *
- * @return string
- */
- private function header(string $name): string
- {
- return sprintf("%s\n%s\n", $name, str_repeat('~', strlen($name)));
- }
-
- /**
- * Before outputting custom links, it is validated to ensure that the user is not
- * directed off to a broken link. If a 404 is detected, it is hidden.
- *
- * @param $link The proposed link
- *
- * @return bool
- */
- private function linkIsValid(string $link): bool
- {
- $link = $this->docDomain . $link;
-
- try {
- return $this->client->request('HEAD', $link)->getStatusCode() < 400;
- } catch (ClientException $e) {
- return false;
- }
- }
-
- /**
- * @param MessageInterface $message
- *
- * @codeCoverageIgnore
- * @return string
- */
- public function str(MessageInterface $message): string
- {
- if ($message instanceof RequestInterface) {
- $msg = trim($message->getMethod() . ' '
- . $message->getRequestTarget())
- . ' HTTP/' . $message->getProtocolVersion();
- if (!$message->hasHeader('host')) {
- $msg .= "\r\nHost: " . $message->getUri()->getHost();
- }
- } elseif ($message instanceof ResponseInterface) {
- $msg = 'HTTP/' . $message->getProtocolVersion() . ' '
- . $message->getStatusCode() . ' '
- . $message->getReasonPhrase();
- }
-
- foreach ($message->getHeaders() as $name => $values) {
- $msg .= "\r\n{$name}: " . implode(', ', $values);
- }
-
- if ($message->getBody()->getSize() < ini_get('memory_limit')) {
- $msg .= "\r\n\r\n" . $message->getBody();
- }
-
- return $msg;
- }
-
- /**
- * Helper method responsible for constructing and returning {@see BadResponseError} exceptions.
- *
- * @param RequestInterface $request The faulty request
- * @param ResponseInterface $response The error-filled response
- *
- * @return BadResponseError
- */
- public function httpError(RequestInterface $request, ResponseInterface $response): BadResponseError
- {
- $message = $this->header('HTTP Error');
-
- $message .= sprintf("The remote server returned a \"%d %s\" error for the following transaction:\n\n",
- $response->getStatusCode(), $response->getReasonPhrase());
-
- $message .= $this->header('Request');
- $message .= trim($this->str($request)) . PHP_EOL . PHP_EOL;
-
- $message .= $this->header('Response');
- $message .= trim($this->str($response)) . PHP_EOL . PHP_EOL;
-
- $message .= $this->header('Further information');
- $message .= $this->getStatusCodeMessage($response->getStatusCode());
-
- $message .= "Visit http://docs.php-opencloud.com/en/latest/http-codes for more information about debugging "
- . "HTTP status codes, or file a support issue on https://github.com/php-opencloud/openstack/issues.";
-
- $e = new BadResponseError($message);
- $e->setRequest($request);
- $e->setResponse($response);
-
- return $e;
- }
-
- private function getStatusCodeMessage(int $statusCode): string
- {
- $errors = [
- 400 => 'Please ensure that your input values are valid and well-formed. ',
- 401 => 'Please ensure that your authentication credentials are valid. ',
- 404 => "Please ensure that the resource you're trying to access actually exists. ",
- 500 => 'Please try this operation again once you know the remote server is operational. ',
- ];
-
- return isset($errors[$statusCode]) ? $errors[$statusCode] : '';
- }
-
- /**
- * Helper method responsible for constructing and returning {@see UserInputError} exceptions.
- *
- * @param string $expectedType The type that was expected from the user
- * @param mixed $userValue The incorrect value the user actually provided
- * @param string|null $furtherLink A link to further information if necessary (optional).
- *
- * @return UserInputError
- */
- public function userInputError(string $expectedType, $userValue, string $furtherLink = null): UserInputError
- {
- $message = $this->header('User Input Error');
-
- $message .= sprintf("%s was expected, but the following value was passed in:\n\n%s\n",
- $expectedType, print_r($userValue, true));
-
- $message .= "Please ensure that the value adheres to the expectation above. ";
-
- if ($furtherLink && $this->linkIsValid($furtherLink)) {
- $message .= sprintf("Visit %s for more information about input arguments. ", $this->docDomain . $furtherLink);
- }
-
- $message .= 'If you run into trouble, please open a support issue on https://github.com/php-opencloud/openstack/issues.';
-
- return new UserInputError($message);
- }
-}
diff --git a/server/vendor/php-opencloud/common/src/Common/Error/NotImplementedError.php b/server/vendor/php-opencloud/common/src/Common/Error/NotImplementedError.php
deleted file mode 100755
index db18f62..0000000
--- a/server/vendor/php-opencloud/common/src/Common/Error/NotImplementedError.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php declare(strict_types=1);
-
-namespace OpenCloud\Common\Error;
-
-/**
- * Error to indicate functionality which has not been implemented yet.
- *
- * @package OpenCloud\Common\Error
- */
-class NotImplementedError extends BaseError
-{
-}
diff --git a/server/vendor/php-opencloud/common/src/Common/Error/UserInputError.php b/server/vendor/php-opencloud/common/src/Common/Error/UserInputError.php
deleted file mode 100755
index e92ab92..0000000
--- a/server/vendor/php-opencloud/common/src/Common/Error/UserInputError.php
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php declare(strict_types=1);
-
-namespace OpenCloud\Common\Error;
-
-/**
- * Represents a user input error, caused by an incorrect type or malformed value.
- *
- * @package OpenCloud\Common\Error
- */
-class UserInputError extends BaseError
-{
-}