Passed
Push — main ( 7b6ef0...e0657e )
by Daniel
14:01
created

AbstractApiApplication::asJson()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 9
Code Lines 3

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 5
CRAP Score 1

Importance

Changes 0
Metric Value
eloc 3
c 0
b 0
f 0
dl 0
loc 9
ccs 5
cts 5
cp 1
rs 10
cc 1
nc 1
nop 2
crap 1
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Uxmp\Core\Api;
6
7
use Psr\Http\Message\ResponseInterface;
8
use Psr\Http\Message\ServerRequestInterface;
9
use Uxmp\Core\Api\Lib\Message\JsonEnabledResponseInterface;
10
11
abstract class AbstractApiApplication
12
{
13
    /**
14
     * @param array<string, scalar> $args
15
     */
16
    abstract protected function run(
17
        ServerRequestInterface $request,
18
        JsonEnabledResponseInterface $response,
19
        array $args
20
    ): ResponseInterface;
21
22
    /**
23
     * @param array<string, scalar> $args
24
     */
25 82
    public function __invoke(
26
        ServerRequestInterface $request,
27
        JsonEnabledResponseInterface $response,
28
        array $args
29
    ): ResponseInterface {
30 82
        return $this->run($request, $response, $args);
31
    }
32
}
33