upgrade to wellrested 5.1.1

This commit is contained in:
Andrei V. Goryunov 2022-07-27 11:32:47 +03:00
parent c153bc0028
commit c5f49214b5
4 changed files with 42 additions and 14 deletions

View File

@ -7,7 +7,7 @@ use Iterator;
/**
* HeaderCollection provides case-insensitive access to lists of header values.
**
*
* HeaderCollection preserves the cases of keys as they are set, but treats key
* access case insensitively.
*
@ -51,7 +51,7 @@ class HeaderCollection implements ArrayAccess, Iterator
* @param string $offset
* @return bool
*/
public function offsetExists($offset)
public function offsetExists($offset): bool
{
return isset($this->values[strtolower($offset)]);
}
@ -60,7 +60,7 @@ class HeaderCollection implements ArrayAccess, Iterator
* @param mixed $offset
* @return string[]
*/
public function offsetGet($offset)
public function offsetGet($offset): array
{
return $this->values[strtolower($offset)];
}
@ -69,7 +69,7 @@ class HeaderCollection implements ArrayAccess, Iterator
* @param string $offset
* @param string $value
*/
public function offsetSet($offset, $value)
public function offsetSet($offset, $value): void
{
$normalized = strtolower($offset);
@ -92,7 +92,7 @@ class HeaderCollection implements ArrayAccess, Iterator
/**
* @param string $offset
*/
public function offsetUnset($offset)
public function offsetUnset($offset): void
{
$normalized = strtolower($offset);
unset($this->fields[$normalized]);
@ -107,27 +107,30 @@ class HeaderCollection implements ArrayAccess, Iterator
// -------------------------------------------------------------------------
// Iterator
public function current()
/**
* @return string[]
*/
public function current(): array
{
return $this->values[$this->keys[$this->position]];
}
public function next()
public function next(): void
{
++$this->position;
}
public function key()
public function key(): string
{
return $this->fields[$this->keys[$this->position]];
}
public function valid()
public function valid(): bool
{
return isset($this->keys[$this->position]);
}
public function rewind()
public function rewind(): void
{
$this->position = 0;
}

View File

@ -195,7 +195,7 @@ class Request extends Message implements RequestInterface
$request = clone $this;
$newHost = $uri->getHost();
$oldHost = isset($request->headers['Host']) ? $request->headers['Host'] : '';
$oldHost = $request->headers['Host'] ?? '';
if ($preserveHost === false) {
// Update Host

View File

@ -0,0 +1,25 @@
<?php
namespace WellRESTed\Message;
use Psr\Http\Message\RequestFactoryInterface;
use Psr\Http\Message\RequestInterface;
use Psr\Http\Message\UriInterface;
class RequestFactory implements RequestFactoryInterface
{
/**
* Create a new request.
*
* @param string $method The HTTP method associated with the request.
* @param UriInterface|string $uri The URI associated with the request. If
* the value is a string, the factory MUST create a UriInterface
* instance based on it.
*
* @return RequestInterface
*/
public function createRequest(string $method, $uri): RequestInterface
{
return new Request($method, $uri);
}
}

View File

@ -292,7 +292,7 @@ class Uri implements UriInterface
*/
public function withScheme($scheme)
{
$scheme = $scheme ? strtolower($scheme) : '';
$scheme = strtolower($scheme ?? '');
if (!in_array($scheme, ['', 'http', 'https'])) {
throw new InvalidArgumentException('Scheme must be http, https, or empty.');
}
@ -446,7 +446,7 @@ class Uri implements UriInterface
public function withFragment($fragment)
{
$uri = clone $this;
$uri->fragment = $fragment;
$uri->fragment = $fragment ?? '';
return $uri;
}
@ -520,7 +520,7 @@ class Uri implements UriInterface
* @param string $subject
* @return string
*/
private function percentEncode($subject)
private function percentEncode(string $subject)
{
$reserved = ':/?#[]@!$&\'()*+,;=';
$reserved = preg_quote($reserved);