Passed
Push — master ( ccc0a5...5195be )
by Roeland
10:43 queued 11s
created

CacheEntry::getUploadTime()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 2
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 1
nc 1
nop 0
dl 0
loc 2
rs 10
c 0
b 0
f 0
1
<?php
2
/**
3
 * @copyright Copyright (c) 2016, ownCloud, Inc.
4
 *
5
 * @author Robin Appelman <[email protected]>
6
 *
7
 * @license AGPL-3.0
8
 *
9
 * This code is free software: you can redistribute it and/or modify
10
 * it under the terms of the GNU Affero General Public License, version 3,
11
 * as published by the Free Software Foundation.
12
 *
13
 * This program is distributed in the hope that it will be useful,
14
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
 * GNU Affero General Public License for more details.
17
 *
18
 * You should have received a copy of the GNU Affero General Public License, version 3,
19
 * along with this program.  If not, see <http://www.gnu.org/licenses/>
20
 *
21
 */
22
23
namespace OC\Files\Cache;
24
25
use OCP\Files\Cache\ICacheEntry;
26
27
/**
28
 * meta data for a file or folder
29
 */
30
class CacheEntry implements ICacheEntry, \ArrayAccess {
31
	/**
32
	 * @var array
33
	 */
34
	private $data;
35
36
	public function __construct(array $data) {
37
		$this->data = $data;
38
	}
39
40
	public function offsetSet($offset, $value) {
41
		$this->data[$offset] = $value;
42
	}
43
44
	public function offsetExists($offset) {
45
		return isset($this->data[$offset]);
46
	}
47
48
	public function offsetUnset($offset) {
49
		unset($this->data[$offset]);
50
	}
51
52
	public function offsetGet($offset) {
53
		if (isset($this->data[$offset])) {
54
			return $this->data[$offset];
55
		} else {
56
			return null;
57
		}
58
	}
59
60
	public function getId() {
61
		return (int)$this->data['fileid'];
62
	}
63
64
	public function getStorageId() {
65
		return $this->data['storage'];
66
	}
67
68
69
	public function getPath() {
70
		return $this->data['path'];
71
	}
72
73
74
	public function getName() {
75
		return $this->data['name'];
76
	}
77
78
79
	public function getMimeType() {
80
		return $this->data['mimetype'];
81
	}
82
83
84
	public function getMimePart() {
85
		return $this->data['mimepart'];
86
	}
87
88
	public function getSize() {
89
		return $this->data['size'];
90
	}
91
92
	public function getMTime() {
93
		return $this->data['mtime'];
94
	}
95
96
	public function getStorageMTime() {
97
		return $this->data['storage_mtime'];
98
	}
99
100
	public function getEtag() {
101
		return $this->data['etag'];
102
	}
103
104
	public function getPermissions() {
105
		return $this->data['permissions'];
106
	}
107
108
	public function isEncrypted() {
109
		return isset($this->data['encrypted']) && $this->data['encrypted'];
110
	}
111
112
	public function getMetadataEtag(): ?string {
113
		return $this->data['metadata_etag'];
114
	}
115
116
	public function getCreationTime(): ?int {
117
		return $this->data['creation_time'];
118
	}
119
120
	public function getUploadTime(): ?int {
121
		return $this->data['upload_time'];
122
	}
123
124
	public function getData() {
125
		return $this->data;
126
	}
127
}
128