Middleware   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 28
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 2

Test Coverage

Coverage 100%

Importance

Changes 0
Metric Value
wmc 2
lcom 0
cbo 2
dl 0
loc 28
ccs 7
cts 7
cp 1
rs 10
c 0
b 0
f 0

2 Methods

Rating   Name   Duplication   Size   Complexity  
A signRequest() 0 8 1
A reauthenticate() 0 6 1
1
<?php
2
3
namespace TreeHouse\Keystone\Client\Middleware;
4
5
use Psr\Http\Message\RequestInterface;
6
use TreeHouse\Keystone\Client\RequestSigner;
7
8
class Middleware
9
{
10
    /**
11
     * @param RequestSigner $signer
12
     *
13
     * @return \Closure
14
     */
15 10
    public static function signRequest(RequestSigner $signer)
16
    {
17
        return function (callable $handler) use ($signer) {
18
            return function (RequestInterface $request, array $options) use ($handler, $signer) {
19 6
                return $handler($signer->signRequest($request), $options);
20 6
            };
21 10
        };
22
    }
23
24
    /**
25
     * @param RequestSigner $signer
26
     *
27
     * @return \Closure
28
     */
29
    public static function reauthenticate(RequestSigner $signer)
30
    {
31 10
        return function (callable $handler) use ($signer) {
32 6
            return new ReauthenticateMiddleware($handler, $signer);
33 10
        };
34
    }
35
}
36