/
home
/
obinna
/
html
/
boaz2
/
vendor
/
php-http
/
client-common
/
src
/
Plugin
/
Upload File
HOME
<?php declare(strict_types=1); namespace Http\Client\Common\Plugin; use Http\Client\Common\Plugin; use Http\Message\Authentication; use Http\Promise\Promise; use Psr\Http\Message\RequestInterface; /** * Send an authenticated request. * * @author Joel Wurtz <joel.wurtz@gmail.com> */ final class AuthenticationPlugin implements Plugin { /** * @var Authentication An authentication system */ private $authentication; public function __construct(Authentication $authentication) { $this->authentication = $authentication; } /** * {@inheritdoc} */ public function handleRequest(RequestInterface $request, callable $next, callable $first): Promise { $request = $this->authentication->authenticate($request); return $next($request); } }