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 / RequestMatcherPlugin.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
RequestMatcherPlugin.php
48 lines
1 <?php
2
3 namespace AmeliaHttp\Client\Common\Plugin;
4
5 use AmeliaHttp\Client\Common\Plugin;
6 use AmeliaHttp\Message\RequestMatcher;
7 use AmeliaPsr\Http\Message\RequestInterface;
8
9 /**
10 * Apply a delegated plugin based on a request match.
11 *
12 * @author Márk Sági-Kazár <mark.sagikazar@gmail.com>
13 */
14 final class RequestMatcherPlugin implements Plugin
15 {
16 /**
17 * @var RequestMatcher
18 */
19 private $requestMatcher;
20
21 /**
22 * @var Plugin
23 */
24 private $delegatedPlugin;
25
26 /**
27 * @param RequestMatcher $requestMatcher
28 * @param Plugin $delegatedPlugin
29 */
30 public function __construct(RequestMatcher $requestMatcher, Plugin $delegatedPlugin)
31 {
32 $this->requestMatcher = $requestMatcher;
33 $this->delegatedPlugin = $delegatedPlugin;
34 }
35
36 /**
37 * {@inheritdoc}
38 */
39 public function handleRequest(RequestInterface $request, callable $next, callable $first)
40 {
41 if ($this->requestMatcher->matches($request)) {
42 return $this->delegatedPlugin->handleRequest($request, $next, $first);
43 }
44
45 return $next($request);
46 }
47 }
48