blob: b8e7ec9118f20a9d4acbad5db32826f5e0dadd9c (
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
|
<?php
/**
* @copyright Copyright (c) 2016, ownCloud, Inc.
*
* @author Morris Jobke <hey@morrisjobke.de>
* @author Robin Appelman <robin@icewind.nl>
* @author szaimen <szaimen@e.mail.de>
*
* @license AGPL-3.0
*
* This code is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License, version 3,
* as published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License, version 3,
* along with this program. If not, see <http://www.gnu.org/licenses/>
*
*/
namespace OCP\Files\Mount;
/**
* A storage mounted to folder on the filesystem
* @since 8.0.0
*/
interface IMountPoint {
/**
* get complete path to the mount point
*
* @return string
* @since 8.0.0
*/
public function getMountPoint();
/**
* Set the mountpoint
*
* @param string $mountPoint new mount point
* @since 8.0.0
*/
public function setMountPoint($mountPoint);
/**
* Get the storage that is mounted
*
* @return \OCP\Files\Storage\IStorage|null
* @since 8.0.0
*/
public function getStorage();
/**
* Get the id of the storages
*
* @return string
* @since 8.0.0
*/
public function getStorageId();
/**
* Get the id of the storages
*
* @return int
* @since 9.1.0
*/
public function getNumericStorageId();
/**
* Get the path relative to the mountpoint
*
* @param string $path absolute path to a file or folder
* @return string
* @since 8.0.0
*/
public function getInternalPath($path);
/**
* Apply a storage wrapper to the mounted storage
*
* @param callable $wrapper
* @since 8.0.0
*/
public function wrapStorage($wrapper);
/**
* Get a mount option
*
* @param string $name Name of the mount option to get
* @param mixed $default Default value for the mount option
* @return mixed
* @since 8.0.0
*/
public function getOption($name, $default);
/**
* Get all options for the mount
*
* @return array
* @since 8.1.0
*/
public function getOptions();
/**
* Get the file id of the root of the storage
*
* @return int
* @since 9.1.0
*/
public function getStorageRootId();
/**
* Get the id of the configured mount
*
* @return int|null mount id or null if not applicable
* @since 9.1.0
*/
public function getMountId();
/**
* Get the type of mount point, used to distinguish things like shares and external storage
* in the web interface
*
* @return string
* @since 12.0.0
*/
public function getMountType();
/**
* Get the class of the mount provider that this mount originates from
*
* @return string
* @since 24.0.0
*/
public function getMountProvider(): string;
}
|