Passed
Push — main ( ec913c...6eea45 )
by Peter
07:00 queued 02:38
created

DeckManager::getOrCreateDeck()   A

Complexity

Conditions 2
Paths 2

Size

Total Lines 8
Code Lines 4

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 6

Importance

Changes 1
Bugs 0 Features 1
Metric Value
cc 2
eloc 4
c 1
b 0
f 1
nc 2
nop 0
dl 0
loc 8
ccs 0
cts 5
cp 0
crap 6
rs 10
1
<?php
2
3
namespace App\Service;
4
5
use App\Card\Deck;
6
use Symfony\Component\HttpFoundation\Session\SessionInterface;
7
8
class DeckManager
9
{
10
    private SessionInterface $session;
11
12
    public function __construct(SessionInterface $session)
13
    {
14
        $this->session = $session;
15
    }
16
17
    public function getOrCreateDeck(): Deck
18
    {
19
        if (!$this->session->has('deck')) {
20
            $deck = new Deck();
21
            $this->session->set('deck', $deck);
22
        }
23
24
        return $this->session->get('deck');
25
    }
26
}
27