Completed
Pull Request — master (#169)
by Serhii
04:50
created

TimestampableTrait   A

Complexity

Total Complexity 6

Size/Duplication

Total Lines 91
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 0

Test Coverage

Coverage 40%

Importance

Changes 0
Metric Value
wmc 6
lcom 0
cbo 0
dl 0
loc 91
ccs 6
cts 15
cp 0.4
rs 10
c 0
b 0
f 0

6 Methods

Rating   Name   Duplication   Size   Complexity  
A getCreatedAt() 0 4 1
A setCreatedAt() 0 6 1
A setUpdatedAt() 0 6 1
A getDeletedAt() 0 4 1
A setDeletedAt() 0 6 1
A getUpdatedAt() 0 4 1
1
<?php
2
3
namespace App\Traits;
4
5
use Doctrine\ORM\Mapping as ORM;
6
use Gedmo\Mapping\Annotation as Gedmo;
7
use JMS\Serializer\Annotation\ExclusionPolicy;
8
use JMS\Serializer\Annotation\Expose;
9
10
/**
11
 * @ExclusionPolicy("all")
12
 */
13
trait TimestampableTrait
14
{
15
    /**
16
     * @Gedmo\Timestampable(on="create")
17
     * @ORM\Column(type="datetime", name="createdAt")
18
     * @Expose
19
     */
20
    protected $createdAt;
21
22
    /**
23
     * @Gedmo\Timestampable(on="update")
24
     * @ORM\Column(type="datetime", nullable=true, name="updatedAt")
25
     * @Expose
26
     */
27
    protected $updatedAt;
28
29
    /**
30
     * @ORM\Column(type="datetime", nullable=true, name="deletedAt")
31
     * @Expose
32
     */
33
    protected $deletedAt;
34
35
    /**
36
     * Get createdAt
37
     *
38
     * @return \DateTime Created at
39
     */
40 2
    public function getCreatedAt()
41
    {
42 2
        return $this->createdAt;
43
    }
44
45
    /**
46
     * Set createdAt
47
     *
48
     * @param  \DateTime $createdAt Created at
49
     * @return $this
50
     */
51
    public function setCreatedAt(\DateTime $createdAt)
52
    {
53
        $this->createdAt = $createdAt;
54
55
        return $this;
56
    }
57
58
    /**
59
     * Get updatedAt
60
     *
61
     * @return \DateTime Updated at
62
     */
63 1
    public function getUpdatedAt()
64
    {
65 1
        return $this->updatedAt;
66
    }
67
68
    /**
69
     * Set updated At
70
     *
71
     * @param  \DateTime $updatedAt Updated at
72
     * @return $this
73
     */
74
    public function setUpdatedAt(\DateTime $updatedAt)
75
    {
76
        $this->updatedAt = $updatedAt;
77
78
        return $this;
79
    }
80
81
    /**
82
     * Get deletedAt
83
     *
84
     * @return \DateTime Deleted at
85
     */
86 2
    public function getDeletedAt()
87
    {
88 2
        return $this->deletedAt;
89
    }
90
91
    /**
92
     * Set deletedAt
93
     *
94
     * @param  \DateTime $deletedAt Deleted at
95
     * @return $this
96
     */
97
    public function setDeletedAt(\DateTime $deletedAt)
98
    {
99
        $this->deletedAt = $deletedAt;
100
101
        return $this;
102
    }
103
}
104