blob: 42dd910871d9f20d34d5202ee48e782705876f76 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
|
<?php
/**
* Copyright (c) 2013 Robin Appelman <icewind@owncloud.com>
* This file is licensed under the Affero General Public License version 3 or
* later.
* See the COPYING-README file.
*/
namespace OCP\Files;
interface Node {
/**
* Move the file or folder to a new location
*
* @param string $targetPath the absolute target path
* @throws \OCP\Files\NotPermittedException
* @return \OCP\Files\Node
*/
public function move($targetPath);
/**
* Delete the file or folder
*/
public function delete();
/**
* Cope the file or folder to a new location
*
* @param string $targetPath the absolute target path
* @return \OCP\Files\Node
*/
public function copy($targetPath);
/**
* Change the modified date of the file or folder
* If $mtime is omitted the current time will be used
*
* @param int $mtime (optional) modified date as unix timestamp
* @throws \OCP\Files\NotPermittedException
*/
public function touch($mtime = null);
/**
* Get the storage backend the file or folder is stored on
*
* @return \OC\Files\Storage\Storage
* @throws \OCP\Files\NotFoundException
*/
public function getStorage();
/**
* Get the full path of the file or folder
*
* @return string
*/
public function getPath();
/**
* Get the path of the file or folder relative to the mountpoint of it's storage
*
* @return string
*/
public function getInternalPath();
/**
* Get the internal file id for the file or folder
*
* @return int
*/
public function getId();
/**
* Get metadata of the file or folder
* The returned array contains the following values:
* - mtime
* - size
*
* @return array
*/
public function stat();
/**
* Get the modified date of the file or folder as unix timestamp
*
* @return int
*/
public function getMTime();
/**
* Get the size of the file or folder in bytes
*
* @return int
*/
public function getSize();
/**
* Get the Etag of the file or folder
* The Etag is an string id used to detect changes to a file or folder,
* every time the file or folder is changed the Etag will change to
*
* @return string
*/
public function getEtag();
/**
* Get the permissions of the file or folder as a combination of one or more of the following constants:
* - \OCP\PERMISSION_READ
* - \OCP\PERMISSION_UPDATE
* - \OCP\PERMISSION_CREATE
* - \OCP\PERMISSION_DELETE
* - \OCP\PERMISSION_SHARE
*
* @return int
*/
public function getPermissions();
/**
* Check if the file or folder is readable
*
* @return bool
*/
public function isReadable();
/**
* Check if the file or folder is writable
*
* @return bool
*/
public function isUpdateable();
/**
* Check if the file or folder is deletable
*
* @return bool
*/
public function isDeletable();
/**
* Check if the file or folder is shareable
*
* @return bool
*/
public function isShareable();
/**
* Get the parent folder of the file or folder
*
* @return Folder
*/
public function getParent();
/**
* Get the filename of the file or folder
*
* @return string
*/
public function getName();
}
|