QueueTrait::queueUpdate()   A
last analyzed

Complexity

Conditions 2
Paths 2

Size

Total Lines 9
Code Lines 4

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 3
CRAP Score 2.0625

Importance

Changes 1
Bugs 0 Features 0
Metric Value
c 1
b 0
f 0
dl 0
loc 9
ccs 3
cts 4
cp 0.75
rs 9.6666
cc 2
eloc 4
nc 2
nop 2
crap 2.0625
1
<?php
2
3
/*
4
 * This file is part of the Tinyissue package.
5
 *
6
 * (c) Mohamed Alsharaf <[email protected]>
7
 *
8
 * For the full copyright and license information, please view the LICENSE
9
 * file that was distributed with this source code.
10
 */
11
12
namespace Tinyissue\Model\Traits\Project\Note;
13
14
use Tinyissue\Model\Project\Note;
15
use Tinyissue\Model\Message;
16
use Tinyissue\Model\Message\Queue;
17
use Tinyissue\Model\User;
18
19
/**
20
 * QueueTrait is trait class for adding method to insert records into a queue.
21
 *
22
 * @author Mohamed Alsharaf <[email protected]>
23
 *
24
 * @property static $this
25
 */
26
trait QueueTrait
27
{
28
    /**
29
     * Insert add note to message queue.
30
     *
31
     * @param Note $note
32
     * @param User $changeBy
33
     *
34
     * @return void
35
     */
36 7
    public function queueAdd(Note $note, User $changeBy)
37
    {
38 7
        return (new Message\Queue())->queue(Queue::ADD_NOTE, $note, $changeBy);
39
    }
40
41
    /**
42
     * Insert update note to message queue.
43
     *
44
     * @param Note $note
45
     * @param User $changeBy
46
     *
47
     * @return void
48
     */
49 2
    public function queueUpdate(Note $note, User $changeBy)
50
    {
51
        // Skip message if nothing changed in note
52 2
        if (!$note->isDirty()) {
53
            return;
54
        }
55
56 2
        return (new Message\Queue())->queue(Queue::UPDATE_NOTE, $note, $changeBy);
57
    }
58
59
    /**
60
     * Insert delete note to message queue.
61
     *
62
     * @param Note $note
63
     * @param User $changeBy
64
     *
65
     * @return void
66
     */
67 2
    public function queueDelete(Note $note, User $changeBy)
68
    {
69 2
        return (new Message\Queue())->queueDelete(Queue::DELETE_NOTE, $note, $changeBy);
70
    }
71
}
72