Blame view
sources/lib/public/files/folder.php
3.38 KB
|
31b7f2792
|
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 |
<?php
/**
* ownCloud
*
* @author Robin Appelman
* @copyright 2013 Robin Appelman icewind@owncloud.com
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
* License as published by the Free Software Foundation; either
* version 3 of the License, or any later version.
*
* This library 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 along with this library. If not, see <http://www.gnu.org/licenses/>.
*
*/
/**
* Public interface of ownCloud for apps to use.
* Files/Folder interface
*/
// use OCP namespace for all classes that are considered public.
// This means that they should be used by apps instead of the internal ownCloud classes
namespace OCP\Files;
interface Folder extends Node {
/**
* Get the full path of an item in the folder within owncloud's filesystem
*
* @param string $path relative path of an item in the folder
* @return string
* @throws \OCP\Files\NotPermittedException
*/
public function getFullPath($path);
/**
* Get the path of an item in the folder relative to the folder
*
* @param string $path absolute path of an item in the folder
* @throws \OCP\Files\NotFoundException
* @return string
*/
public function getRelativePath($path);
/**
* check if a node is a (grand-)child of the folder
*
* @param \OCP\Files\Node $node
* @return bool
*/
public function isSubNode($node);
/**
* get the content of this directory
*
* @throws \OCP\Files\NotFoundException
* @return \OCP\Files\Node[]
*/
public function getDirectoryListing();
/**
* Get the node at $path
*
* @param string $path relative path of the file or folder
* @return \OCP\Files\Node
* @throws \OCP\Files\NotFoundException
*/
public function get($path);
/**
* Check if a file or folder exists in the folder
*
* @param string $path relative path of the file or folder
* @return bool
*/
public function nodeExists($path);
/**
* Create a new folder
*
* @param string $path relative path of the new folder
* @return \OCP\Files\Folder
* @throws \OCP\Files\NotPermittedException
*/
public function newFolder($path);
/**
* Create a new file
*
* @param string $path relative path of the new file
* @return \OCP\Files\File
* @throws \OCP\Files\NotPermittedException
*/
public function newFile($path);
/**
* search for files with the name matching $query
*
* @param string $query
* @return \OCP\Files\Node[]
*/
public function search($query);
/**
* search for files by mimetype
* $mimetype can either be a full mimetype (image/png) or a wildcard mimetype (image)
*
* @param string $mimetype
* @return \OCP\Files\Node[]
*/
public function searchByMime($mimetype);
/**
* get a file or folder inside the folder by it's internal id
*
* @param int $id
* @return \OCP\Files\Node[]
*/
public function getById($id);
/**
* Get the amount of free space inside the folder
*
* @return int
*/
public function getFreeSpace();
/**
* Check if new files or folders can be created within the folder
*
* @return bool
*/
public function isCreatable();
}
|