PluginProbe ʕ •ᴥ•ʔ
Booking for Appointments and Events Calendar – Amelia / 1.2.20
Booking for Appointments and Events Calendar – Amelia v1.2.20
2.4.4 2.4.3 2.4.2 2.4.1 2.4 trunk 1.2.1 1.2.10 1.2.11 1.2.12 1.2.13 1.2.14 1.2.15 1.2.16 1.2.17 1.2.18 1.2.19 1.2.2 1.2.20 1.2.21 1.2.22 1.2.23 1.2.24 1.2.25 1.2.26 1.2.27 1.2.28 1.2.29 1.2.3 1.2.30 1.2.31 1.2.32 1.2.33 1.2.34 1.2.35 1.2.36 1.2.37 1.2.38 1.2.4 1.2.5 1.2.6 1.2.7 1.2.8 1.2.9 2.0 2.0.1 2.0.2 2.1 2.1.1 2.1.2 2.1.3 2.2 2.2.1 2.3
ameliabooking / vendor / php-http / client-common / src / Plugin / HeaderDefaultsPlugin.php
ameliabooking / vendor / php-http / client-common / src / Plugin Last commit date
AddHostPlugin.php 3 years ago AddPathPlugin.php 3 years ago AuthenticationPlugin.php 3 years ago BaseUriPlugin.php 3 years ago ContentLengthPlugin.php 3 years ago ContentTypePlugin.php 3 years ago CookiePlugin.php 3 years ago DecoderPlugin.php 3 years ago ErrorPlugin.php 3 years ago HeaderAppendPlugin.php 3 years ago HeaderDefaultsPlugin.php 3 years ago HeaderRemovePlugin.php 3 years ago HeaderSetPlugin.php 3 years ago HistoryPlugin.php 3 years ago Journal.php 3 years ago QueryDefaultsPlugin.php 3 years ago RedirectPlugin.php 3 years ago RequestMatcherPlugin.php 3 years ago RetryPlugin.php 3 years ago VersionBridgePlugin.php 3 years ago
HeaderDefaultsPlugin.php
44 lines
1 <?php
2
3 namespace AmeliaHttp\Client\Common\Plugin;
4
5 use AmeliaHttp\Client\Common\Plugin;
6 use AmeliaPsr\Http\Message\RequestInterface;
7
8 /**
9 * Set header to default value if it does not exist.
10 *
11 * If a given header already exists the value wont be replaced and the request wont be changed.
12 *
13 * @author Soufiane Ghzal <sghzal@gmail.com>
14 */
15 final class HeaderDefaultsPlugin implements Plugin
16 {
17 /**
18 * @var array
19 */
20 private $headers = [];
21
22 /**
23 * @param array $headers Hashmap of header name to header value
24 */
25 public function __construct(array $headers)
26 {
27 $this->headers = $headers;
28 }
29
30 /**
31 * {@inheritdoc}
32 */
33 public function handleRequest(RequestInterface $request, callable $next, callable $first)
34 {
35 foreach ($this->headers as $header => $headerValue) {
36 if (!$request->hasHeader($header)) {
37 $request = $request->withHeader($header, $headerValue);
38 }
39 }
40
41 return $next($request);
42 }
43 }
44