Passed
Branch bigRefactor (c260a1)
by Julien
34:53
created

DirectEliminationCompetitorTreeGen   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 28
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 2

Importance

Changes 0
Metric Value
wmc 3
lcom 0
cbo 2
dl 0
loc 28
rs 10
c 0
b 0
f 0

3 Methods

Rating   Name   Duplication   Size   Complexity  
A getFighters() 0 4 1
A syncGroup() 0 6 1
A createByeFighter() 0 4 1
1
<?php
2
3
namespace Xoco70\KendoTournaments\TreeGen;
4
5
use Illuminate\Support\Collection;
6
use Xoco70\KendoTournaments\Exceptions\TreeGenerationException;
7
use Xoco70\KendoTournaments\Models\Championship;
8
use Xoco70\KendoTournaments\Models\ChampionshipSettings;
9
use Xoco70\KendoTournaments\Models\Competitor;
10
use Xoco70\KendoTournaments\Models\FightersGroup;
11
use Xoco70\KendoTournaments\Models\Team;
12
13
class DirectEliminationCompetitorTreeGen extends DirectEliminationTreeGen
14
{
15
    /**
16
     * Fighter is the name for competitor or team, depending on the case
17
     * @return Collection
18
     */
19
    protected function getFighters()
20
    {
21
        return $this->championship->competitors;
22
    }
23
24
    /**
25
     * @param $group
26
     * @param $fighters
27
     * @return FightersGroup
28
     */
29
    public function syncGroup($group, $fighters)
30
    {
31
        // Add all competitors to Pivot Table
32
        $group->syncCompetitors($fighters);
33
        return $group;
34
    }
35
36
    protected function createByeFighter()
37
    {
38
        return new Competitor();
39
    }
40
}
41