Completed
Push — master ( a0132a...a06ba6 )
by Morris
69:55 queued 52:37
created

CreateVersionEvent::getNode()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 2
nc 1
nop 0
dl 0
loc 3
rs 10
c 0
b 0
f 0
1
<?php
2
/**
3
 * @copyright Copyright (c) 2017 Bjoern Schiessle <[email protected]>
4
 *
5
 * @license GNU AGPL version 3 or any later version
6
 *
7
 * This program is free software: you can redistribute it and/or modify
8
 * it under the terms of the GNU Affero General Public License as
9
 * published by the Free Software Foundation, either version 3 of the
10
 * License, or (at your option) any later version.
11
 *
12
 * This program is distributed in the hope that it will be useful,
13
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15
 * GNU Affero General Public License for more details.
16
 *
17
 * You should have received a copy of the GNU Affero General Public License
18
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
19
 *
20
 */
21
22
23
namespace OCA\Files_Versions\Events;
24
25
26
use OCP\Files\Node;
27
use Symfony\Component\EventDispatcher\Event;
28
29
30
/**
31
 * Class CreateVersionEvent
32
 *
33
 * Event to allow other apps to disable versions for specific files
34
 *
35
 * @package OCA\Files_Versions
36
 */
37
class CreateVersionEvent extends Event {
38
39
40
	/** @var bool */
41
	private $createVersion;
42
43
	/** @var Node */
44
	private $node;
45
46
	/**
47
	 * CreateVersionEvent constructor.
48
	 *
49
	 * @param Node $node
50
	 */
51
	public function __construct(Node $node) {
52
		$this->createVersion = true;
53
		$this->node = $node;
54
	}
55
56
	/**
57
	 * get Node of the file which should be versioned
58
	 *
59
	 * @return Node
60
	 */
61
	public function getNode() {
62
		return $this->node;
63
	}
64
65
	/**
66
	 * disable versions for this file
67
	 */
68
	public function disableVersions() {
69
		$this->createVersion = false;
70
	}
71
72
	/**
73
	 * should a version be created for this file?
74
	 *
75
	 * @return bool
76
	 */
77
	public function shouldCreateVersion() {
78
		return $this->createVersion;
79
	}
80
81
}
82