Proyectos de Subversion Moodle

Rev

Rev 1 | Mostrar el archivo completo | | | Autoría | Ultima modificación | Ver Log |

Rev 1 Rev 1441
Línea 5... Línea 5...
5
use GuzzleHttp\BodySummarizer;
5
use GuzzleHttp\BodySummarizer;
6
use GuzzleHttp\BodySummarizerInterface;
6
use GuzzleHttp\BodySummarizerInterface;
7
use Psr\Http\Client\RequestExceptionInterface;
7
use Psr\Http\Client\RequestExceptionInterface;
8
use Psr\Http\Message\RequestInterface;
8
use Psr\Http\Message\RequestInterface;
9
use Psr\Http\Message\ResponseInterface;
9
use Psr\Http\Message\ResponseInterface;
10
use Psr\Http\Message\UriInterface;
-
 
Línea 11... Línea 10...
11
 
10
 
12
/**
11
/**
13
 * HTTP Request exception
12
 * HTTP Request exception
14
 */
13
 */
Línea 30... Línea 29...
30
    private $handlerContext;
29
    private $handlerContext;
Línea 31... Línea 30...
31
 
30
 
32
    public function __construct(
31
    public function __construct(
33
        string $message,
32
        string $message,
34
        RequestInterface $request,
33
        RequestInterface $request,
35
        ResponseInterface $response = null,
34
        ?ResponseInterface $response = null,
36
        \Throwable $previous = null,
35
        ?\Throwable $previous = null,
37
        array $handlerContext = []
36
        array $handlerContext = []
38
    ) {
37
    ) {
39
        // Set the code of the exception if the response is set and not future.
38
        // Set the code of the exception if the response is set and not future.
40
        $code = $response ? $response->getStatusCode() : 0;
39
        $code = $response ? $response->getStatusCode() : 0;
Línea 61... Línea 60...
61
     * @param array                        $handlerContext Optional handler context
60
     * @param array                        $handlerContext Optional handler context
62
     * @param BodySummarizerInterface|null $bodySummarizer Optional body summarizer
61
     * @param BodySummarizerInterface|null $bodySummarizer Optional body summarizer
63
     */
62
     */
64
    public static function create(
63
    public static function create(
65
        RequestInterface $request,
64
        RequestInterface $request,
66
        ResponseInterface $response = null,
65
        ?ResponseInterface $response = null,
67
        \Throwable $previous = null,
66
        ?\Throwable $previous = null,
68
        array $handlerContext = [],
67
        array $handlerContext = [],
69
        BodySummarizerInterface $bodySummarizer = null
68
        ?BodySummarizerInterface $bodySummarizer = null
70
    ): self {
69
    ): self {
71
        if (!$response) {
70
        if (!$response) {
72
            return new self(
71
            return new self(
73
                'Error completing request',
72
                'Error completing request',
74
                $request,
73
                $request,
Línea 88... Línea 87...
88
        } else {
87
        } else {
89
            $label = 'Unsuccessful request';
88
            $label = 'Unsuccessful request';
90
            $className = __CLASS__;
89
            $className = __CLASS__;
91
        }
90
        }
Línea 92... Línea 91...
92
 
91
 
93
        $uri = $request->getUri();
-
 
Línea 94... Línea 92...
94
        $uri = static::obfuscateUri($uri);
92
        $uri = \GuzzleHttp\Psr7\Utils::redactUserInfo($request->getUri());
95
 
93
 
96
        // Client Error: `GET /` resulted in a `404 Not Found` response:
94
        // Client Error: `GET /` resulted in a `404 Not Found` response:
97
        // <html> ... (truncated)
95
        // <html> ... (truncated)
Línea 112... Línea 110...
112
 
110
 
113
        return new $className($message, $request, $response, $previous, $handlerContext);
111
        return new $className($message, $request, $response, $previous, $handlerContext);
Línea 114... Línea 112...
114
    }
112
    }
115
 
-
 
116
    /**
-
 
117
     * Obfuscates URI if there is a username and a password present
-
 
118
     */
-
 
119
    private static function obfuscateUri(UriInterface $uri): UriInterface
-
 
120
    {
-
 
121
        $userInfo = $uri->getUserInfo();
-
 
122
 
-
 
123
        if (false !== ($pos = \strpos($userInfo, ':'))) {
-
 
124
            return $uri->withUserInfo(\substr($userInfo, 0, $pos), '***');
-
 
125
        }
-
 
126
 
-
 
127
        return $uri;
-
 
128
    }
-
 
129
 
113
 
130
    /**
114
    /**
131
     * Get the request that caused the exception
115
     * Get the request that caused the exception
132
     */
116
     */
133
    public function getRequest(): RequestInterface
117
    public function getRequest(): RequestInterface