Failed Conditions
Push — master ( 2cd2ab...a2c35d )
by Sam
05:33
created

Tag::getResources()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 0
Metric Value
cc 1
eloc 1
nc 1
nop 0
dl 0
loc 3
ccs 0
cts 2
cp 0
crap 2
rs 10
c 0
b 0
f 0
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Application\Model;
6
7
use Application\Traits\HasName;
8
use Doctrine\Common\Collections\ArrayCollection;
9
use Doctrine\Common\Collections\Collection;
10
use Doctrine\ORM\Mapping as ORM;
11
12
/**
13
 * A tag
14
 *
15
 * @ORM\Entity(repositoryClass="Application\Repository\TagRepository")
16
 * @ORM\Table(uniqueConstraints={
17
 *     @ORM\UniqueConstraint(name="unique_name", columns={"name"})
18
 * })
19
 */
20
class Tag extends AbstractModel
21
{
22
    use HasName;
23
24
    /**
25
     * Hexadecimal code
26
     *
27
     * @var string
28
     * @ORM\Column(type="string", length=25, options={"default" = ""})
29
     */
30
    private $color = '';
31
32
    /**
33
     * @var Collection
34
     * @ORM\ManyToMany(targetEntity="Application\Model\Resource", inversedBy="tags")
35
     */
36
    private $resources;
37
38
    /**
39
     * Constructor
40
     */
41 3
    public function __construct()
42
    {
43 3
        $this->resources = new ArrayCollection();
44 3
    }
45
46
    /**
47
     * @return Collection
48
     */
49
    public function getResources(): Collection
50
    {
51
        return $this->resources;
52
    }
53
54
    /**
55
     * Add resource
56
     *
57
     * @param resource $resource
58
     */
59
    public function addResource(Resource $resource): void
60
    {
61
        if (!$this->resources->contains($resource)) {
62
            $this->resources->add($resource);
63
        }
64
    }
65
66
    /**
67
     * @param string $color
68
     */
69
    public function setColor(string $color): void
70
    {
71
        $this->color = $color;
72
    }
73
74
    /**
75
     * @return string
76
     */
77
    public function getColor(): string
78
    {
79
        return $this->color;
80
    }
81
82
    /**
83
     * Remove resource
84
     *
85
     * @param resource $resource
86
     */
87
    public function removeResource(Resource $resource): void
88
    {
89
        $this->resources->removeElement($resource);
90
    }
91
}
92