Test Failed
Push — master ( 6abe5f...23903e )
by Szymon
01:28
created

BookReadModel   A

Complexity

Total Complexity 6

Size/Duplication

Total Lines 42
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
eloc 14
dl 0
loc 42
rs 10
c 0
b 0
f 0
wmc 6

6 Methods

Rating   Name   Duplication   Size   Complexity  
A reset() 0 3 1
A init() 0 3 1
A __construct() 0 3 1
A insert() 0 10 1
A delete() 0 3 1
A isInitialized() 0 3 1
1
<?php
2
3
declare(strict_types=1);
4
5
namespace App\Infrastructure\Book\Projection;
6
7
use App\Infrastructure\Book\Query\Projections\BookMysqlRepository;
8
use App\Infrastructure\Book\Query\Projections\BookView;
9
use Prooph\EventStore\Projection\AbstractReadModel;
0 ignored issues
show
Bug introduced by
The type Prooph\EventStore\Projection\AbstractReadModel was not found. Maybe you did not declare it correctly or list all dependencies?

The issue could also be caused by a filter entry in the build configuration. If the path has been excluded in your configuration, e.g. excluded_paths: ["lib/*"], you can move it to the dependency path list as follows:

filter:
    dependency_paths: ["lib/*"]

For further information see https://scrutinizer-ci.com/docs/tools/php/php-scrutinizer/#list-dependency-paths

Loading history...
10
11
class BookReadModel extends AbstractReadModel
12
{
13
    /**
14
     * @var BookMysqlRepository
15
     */
16
    private $bookMysqlRepository;
17
18
    public function __construct(BookMysqlRepository $bookMysqlRepository)
19
    {
20
        $this->bookMysqlRepository = $bookMysqlRepository;
21
    }
22
23
    public function init(): void
24
    {
25
        return;
26
    }
27
28
    public function isInitialized(): bool
29
    {
30
        return true;
31
    }
32
33
    public function reset(): void
34
    {
35
        return;
36
    }
37
38
    public function delete(): void
39
    {
40
        return;
41
    }
42
43
    protected function insert(array $bookView)
44
    {
45
        $bookView = new BookView(
46
            $bookView['id'],
47
            $bookView['name'],
48
            $bookView['description'],
49
            $bookView['category'],
50
            $bookView['author']
51
        );
52
        $this->bookMysqlRepository->add($bookView);
53
    }
54
}
55