ContentLengthMiddleware   A
last analyzed

Complexity

Total Complexity 3

Size/Duplication

Total Lines 16
Duplicated Lines 0 %

Test Coverage

Coverage 71.43%

Importance

Changes 0
Metric Value
eloc 6
dl 0
loc 16
ccs 5
cts 7
cp 0.7143
rs 10
c 0
b 0
f 0
wmc 3

2 Methods

Rating   Name   Duplication   Size   Complexity  
A handleResponse() 0 3 1
A handleRequest() 0 9 2
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Buzz\Middleware;
6
7
use Psr\Http\Message\RequestInterface;
8
use Psr\Http\Message\ResponseInterface;
9
10
class ContentLengthMiddleware implements MiddlewareInterface
11
{
12 1
    public function handleRequest(RequestInterface $request, callable $next)
13
    {
14 1
        $body = $request->getBody();
15
16 1
        if (!$request->hasHeader('Content-Length')) {
17 1
            $request = $request->withAddedHeader('Content-Length', (string) $body->getSize());
18
        }
19
20 1
        return $next($request);
21
    }
22
23
    public function handleResponse(RequestInterface $request, ResponseInterface $response, callable $next)
24
    {
25
        return $next($request, $response);
26
    }
27
}
28