Completed
Pull Request — master (#8)
by Mariusz
02:30
created

Store::setApproved()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 1
nc 1
nop 1
dl 0
loc 3
rs 10
c 0
b 0
f 0
1
<?php
2
3
namespace Xsolve\AssociateTests\Functional\DoctrineOrm\Mock\Entity;
4
5
use Doctrine\Common\Collections\ArrayCollection;
6
use Doctrine\Common\Collections\Collection;
7
use Doctrine\ORM\Mapping\Entity;
8
use Doctrine\ORM\Mapping\Table;
9
use Doctrine\ORM\Mapping\Id;
10
use Doctrine\ORM\Mapping\Column;
11
use Doctrine\ORM\Mapping\ManyToOne;
12
use Doctrine\ORM\Mapping\OneToMany;
13
14
/**
15
 * @Entity
16
 * @Table(name="store")
17
 */
18
class Store
19
{
20
    /**
21
     * @var string
22
     *
23
     * @Id
24
     * @Column(type="string", length=64)
25
     */
26
    protected $id;
27
28
//    /**
29
//     * @var string
30
//     *
31
//     * @Column(type="string", length=128)
32
//     */
33
//    protected $name;
34
35
    /**
36
     * @var bool
37
     *
38
     * @Column(type="boolean")
39
     */
40
    protected $approved;
41
42
    /**
43
     * @var User
44
     *
45
     * @ManyToOne(targetEntity="User", inversedBy="stores")
46
     */
47
    protected $user;
48
49
    /**
50
     * @var Collection|Product[]
51
     *
52
     * @OneToMany(targetEntity="Product", mappedBy="store")
53
     */
54
    protected $products;
55
56
    /**
57
     * @param string $id
58
     */
59
    public function __construct(string $id)
60
    {
61
        $this->id = $id;
62
63
        $this->products = new ArrayCollection();
64
    }
65
66
    /**
67
     * @return string
68
     */
69
    public function getId(): string
70
    {
71
        return $this->id;
72
    }
73
74
//    /**
75
//     * @param string $name
76
//     */
77
//    public function setName(string $name)
78
//    {
79
//        $this->name = $name;
80
//    }
81
//
82
//    /**
83
//     * @return string
84
//     */
85
//    public function getName(): string
86
//    {
87
//        return $this->name;
88
//    }
89
90
    /**
91
     * @param bool $approved
92
     */
93
    public function setApproved(bool $approved)
94
    {
95
        $this->approved = $approved;
96
    }
97
98
    /**
99
     * @return bool
100
     */
101
    public function isApproved(): bool
102
    {
103
        return $this->approved;
104
    }
105
106
    /**
107
     * @param User $user
108
     */
109
    public function setUser(User $user)
110
    {
111
        $this->user = $user;
112
    }
113
114
    /**
115
     * @return User
116
     */
117
    public function getUser(): User
118
    {
119
        return $this->user;
120
    }
121
122
    /**
123
     * @param Product[] $products
124
     */
125
    public function setProducts(array $products)
126
    {
127
        $this->products->clear();
128
        foreach ($products as $product) {
129
            $this->products->add($product);
130
        }
131
    }
132
133
    /**
134
     * @param Product $product
135
     */
136
    public function addProduct(Product $product)
137
    {
138
        $this->products->add($product);
139
    }
140
141
    /**
142
     * @return Collection|Product[]
143
     */
144
    public function getProducts(): Collection
145
    {
146
        return $this->products;
147
    }
148
}
149