Passed
Push — master ( 7f557b...a9ce00 )
by Timo
02:12
created

ForceCache   A

Complexity

Total Complexity 2

Size/Duplication

Total Lines 17
Duplicated Lines 0 %

Test Coverage

Coverage 100%

Importance

Changes 0
Metric Value
dl 0
loc 17
ccs 5
cts 5
cp 1
rs 10
c 0
b 0
f 0
wmc 2

1 Method

Rating   Name   Duplication   Size   Complexity  
A request() 0 9 2
1
<?php
2
3
namespace hamburgscleanest\GuzzleAdvancedThrottle\Cache\Strategies;
4
5
use GuzzleHttp\Promise\FulfilledPromise;
6
use GuzzleHttp\Promise\PromiseInterface;
7
use Psr\Http\Message\RequestInterface;
8
9
/**
10
 * Class ForceCache
11
 * @package hamburgscleanest\GuzzleAdvancedThrottle\Cache\Strategies
12
 */
13
class ForceCache extends Cacheable
14
{
15
16
    /**
17
     * @param RequestInterface $request
18
     * @param callable $handler
19
     * @return PromiseInterface
20
     */
21 1
    public function request(RequestInterface $request, callable $handler) : PromiseInterface
22
    {
23 1
        $response = $this->_getResponse($request);
24 1
        if ($response !== null)
25
        {
26 1
            return new FulfilledPromise($response);
27
        }
28
29 1
        return parent::request($request, $handler);
30
    }
31
}