Passed
Push — master ( 4bc322...e35e92 )
by Peter
04:39
created

RequestConverter   A

Complexity

Total Complexity 2

Size/Duplication

Total Lines 25
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
eloc 11
dl 0
loc 25
rs 10
c 0
b 0
f 0
wmc 2

1 Method

Rating   Name   Duplication   Size   Complexity  
A toPsr() 0 18 2
1
<?php
2
3
declare(strict_types=1);
4
5
namespace AbterPhp\Framework\Psr7;
6
7
use Nyholm\Psr7\Factory\Psr17Factory;
8
use Nyholm\Psr7Server\ServerRequestCreator;
9
use Opulence\Http\Requests\Request as OpulenceRequest;
10
use Psr\Http\Message\RequestInterface;
11
12
class RequestConverter
13
{
14
    /**
15
     * @param OpulenceRequest $opulenceRequest
16
     *
17
     * @return RequestInterface
18
     */
19
    public function toPsr(OpulenceRequest $opulenceRequest): RequestInterface
20
    {
21
        $psr17Factory = new Psr17Factory();
22
23
        $creator = new ServerRequestCreator(
24
            $psr17Factory, // ServerRequestFactory
25
            $psr17Factory, // UriFactory
26
            $psr17Factory, // UploadedFileFactory
27
            $psr17Factory  // StreamFactory
28
        );
29
30
        $request = $creator->fromGlobals();
31
32
        if ($opulenceRequest->isJson()) {
33
            $request = $request->withParsedBody($opulenceRequest->getJsonBody());
34
        }
35
36
        return $request;
37
    }
38
}
39