Passed
Push — master ( 03e013...bd5966 )
by Anatoly
01:18 queued 14s
created

OpenApiFactory   A

Complexity

Total Complexity 1

Size/Duplication

Total Lines 23
Duplicated Lines 0 %

Test Coverage

Coverage 0%

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 7
dl 0
loc 23
c 1
b 0
f 0
ccs 0
cts 9
cp 0
rs 10
wmc 1

1 Method

Rating   Name   Duplication   Size   Complexity  
A createOpenApi() 0 12 1
1
<?php declare(strict_types=1);
2
3
namespace App\Factory;
4
5
/**
6
 * Import classes
7
 */
8
use Psr\Container\ContainerInterface;
9
use Sunrise\Http\Router\OpenApi\Object\Info;
10
use Sunrise\Http\Router\OpenApi\OpenApi;
11
12
/**
13
 * OpenApiFactory
14
 *
15
 * Don't use this factory outside the container!
16
 */
17
final class OpenApiFactory
18
{
19
20
    /**
21
     * Creates OpenApi instance
22
     *
23
     * @param array $params
24
     * @param ContainerInterface $container
25
     *
26
     * @return OpenApi
27
     */
28
    public function createOpenApi(array $params, ContainerInterface $container) : OpenApi
29
    {
30
        $info = new Info(
31
            $container->get('app.name'),
32
            $container->get('app.version')
33
        );
34
35
        $openapi = new OpenApi($info);
36
37
        $openapi->addRoute(...$container->get('router')->getRoutes());
38
39
        return $openapi;
40
    }
41
}
42