TYPO3  7.6
DriverInterface.php
Go to the documentation of this file.
1 <?php
2 namespace TYPO3\CMS\Core\Resource\Driver;
3 
4 /*
5  * This file is part of the TYPO3 CMS project.
6  *
7  * It is free software; you can redistribute it and/or modify it under
8  * the terms of the GNU General Public License, either version 2
9  * of the License, or any later version.
10  *
11  * For the full copyright and license information, please read the
12  * LICENSE.txt file that was distributed with this source code.
13  *
14  * The TYPO3 project - inspiring people to share!
15  */
16 
17 
22 interface DriverInterface
23 {
28  public function processConfiguration();
29 
36  public function setStorageUid($storageUid);
37 
44  public function initialize();
45 
52  public function getCapabilities();
53 
62  public function mergeConfigurationCapabilities($capabilities);
63 
70  public function hasCapability($capability);
71 
81  public function isCaseSensitiveFileSystem();
82 
91  public function sanitizeFileName($fileName, $charset = '');
92 
101  public function hashIdentifier($identifier);
102 
108  public function getRootLevelFolder();
109 
115  public function getDefaultFolder();
116 
123  public function getParentFolderIdentifierOfIdentifier($fileIdentifier);
124 
132  public function getPublicUrl($identifier);
133 
143  public function createFolder($newFolderName, $parentFolderIdentifier = '', $recursive = false);
144 
152  public function renameFolder($folderIdentifier, $newName);
153 
161  public function deleteFolder($folderIdentifier, $deleteRecursively = false);
162 
169  public function fileExists($fileIdentifier);
170 
177  public function folderExists($folderIdentifier);
178 
185  public function isFolderEmpty($folderIdentifier);
186 
200  public function addFile($localFilePath, $targetFolderIdentifier, $newFileName = '', $removeOriginal = true);
201 
209  public function createFile($fileName, $parentFolderIdentifier);
210 
221  public function copyFileWithinStorage($fileIdentifier, $targetFolderIdentifier, $fileName);
222 
230  public function renameFile($fileIdentifier, $newName);
231 
239  public function replaceFile($fileIdentifier, $localFilePath);
240 
249  public function deleteFile($fileIdentifier);
250 
258  public function hash($fileIdentifier, $hashAlgorithm);
259 
260 
271  public function moveFileWithinStorage($fileIdentifier, $targetFolderIdentifier, $newFileName);
272 
273 
282  public function moveFolderWithinStorage($sourceFolderIdentifier, $targetFolderIdentifier, $newFolderName);
283 
292  public function copyFolderWithinStorage($sourceFolderIdentifier, $targetFolderIdentifier, $newFolderName);
293 
303  public function getFileContents($fileIdentifier);
304 
312  public function setFileContents($fileIdentifier, $contents);
313 
321  public function fileExistsInFolder($fileName, $folderIdentifier);
322 
330  public function folderExistsInFolder($folderName, $folderIdentifier);
331 
343  public function getFileForLocalProcessing($fileIdentifier, $writable = true);
344 
352  public function getPermissions($identifier);
353 
362  public function dumpFileContents($identifier);
363 
377  public function isWithin($folderIdentifier, $identifier);
378 
387  public function getFileInfoByIdentifier($fileIdentifier, array $propertiesToExtract = array());
388 
395  public function getFolderInfoByIdentifier($folderIdentifier);
396 
404  public function getFileInFolder($fileName, $folderIdentifier);
405 
422  public function getFilesInFolder($folderIdentifier, $start = 0, $numberOfItems = 0, $recursive = false, array $filenameFilterCallbacks = array(), $sort = '', $sortRev = false);
423 
431  public function getFolderInFolder($folderName, $folderIdentifier);
432 
449  public function getFoldersInFolder($folderIdentifier, $start = 0, $numberOfItems = 0, $recursive = false, array $folderNameFilterCallbacks = array(), $sort = '', $sortRev = false);
450 
459  public function countFilesInFolder($folderIdentifier, $recursive = false, array $filenameFilterCallbacks = array());
460 
469  public function countFoldersInFolder($folderIdentifier, $recursive = false, array $folderNameFilterCallbacks = array());
470 }