|
|
|
@ -5,68 +5,17 @@ |
|
|
|
* SPDX-FileCopyrightText: 2016 ownCloud, Inc. |
|
|
|
* SPDX-License-Identifier: AGPL-3.0-only |
|
|
|
*/ |
|
|
|
|
|
|
|
namespace OC\Files\Storage; |
|
|
|
|
|
|
|
use OCP\Lock\ILockingProvider; |
|
|
|
use OCP\Files\Storage\IStorage; |
|
|
|
|
|
|
|
/** |
|
|
|
* Provide a common interface to all different storage options |
|
|
|
* |
|
|
|
* All paths passed to the storage are relative to the storage and should NOT have a leading slash. |
|
|
|
*/ |
|
|
|
interface Storage extends \OCP\Files\Storage { |
|
|
|
/** |
|
|
|
* get a cache instance for the storage |
|
|
|
* |
|
|
|
* @param string $path |
|
|
|
* @param \OC\Files\Storage\Storage|null (optional) the storage to pass to the cache |
|
|
|
* @return \OC\Files\Cache\Cache |
|
|
|
*/ |
|
|
|
public function getCache($path = '', $storage = null); |
|
|
|
|
|
|
|
/** |
|
|
|
* get a scanner instance for the storage |
|
|
|
* |
|
|
|
* @param string $path |
|
|
|
* @param \OC\Files\Storage\Storage (optional) the storage to pass to the scanner |
|
|
|
* @return \OC\Files\Cache\Scanner |
|
|
|
*/ |
|
|
|
public function getScanner($path = '', $storage = null); |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
* get the user id of the owner of a file or folder |
|
|
|
* |
|
|
|
* @param string $path |
|
|
|
* @return string |
|
|
|
*/ |
|
|
|
public function getOwner($path); |
|
|
|
|
|
|
|
/** |
|
|
|
* get a watcher instance for the cache |
|
|
|
* |
|
|
|
* @param string $path |
|
|
|
* @param \OC\Files\Storage\Storage (optional) the storage to pass to the watcher |
|
|
|
* @return \OC\Files\Cache\Watcher |
|
|
|
*/ |
|
|
|
public function getWatcher($path = '', $storage = null); |
|
|
|
|
|
|
|
/** |
|
|
|
* get a propagator instance for the cache |
|
|
|
* |
|
|
|
* @param \OC\Files\Storage\Storage (optional) the storage to pass to the watcher |
|
|
|
* @return \OC\Files\Cache\Propagator |
|
|
|
*/ |
|
|
|
public function getPropagator($storage = null); |
|
|
|
|
|
|
|
/** |
|
|
|
* get a updater instance for the cache |
|
|
|
* |
|
|
|
* @param \OC\Files\Storage\Storage (optional) the storage to pass to the watcher |
|
|
|
* @return \OC\Files\Cache\Updater |
|
|
|
*/ |
|
|
|
public function getUpdater($storage = null); |
|
|
|
|
|
|
|
interface Storage extends IStorage { |
|
|
|
/** |
|
|
|
* @return \OC\Files\Cache\Storage |
|
|
|
*/ |
|
|
|
@ -78,30 +27,6 @@ interface Storage extends \OCP\Files\Storage { |
|
|
|
*/ |
|
|
|
public function getMetaData($path); |
|
|
|
|
|
|
|
/** |
|
|
|
* @param string $path The path of the file to acquire the lock for |
|
|
|
* @param int $type \OCP\Lock\ILockingProvider::LOCK_SHARED or \OCP\Lock\ILockingProvider::LOCK_EXCLUSIVE |
|
|
|
* @param \OCP\Lock\ILockingProvider $provider |
|
|
|
* @throws \OCP\Lock\LockedException |
|
|
|
*/ |
|
|
|
public function acquireLock($path, $type, ILockingProvider $provider); |
|
|
|
|
|
|
|
/** |
|
|
|
* @param string $path The path of the file to release the lock for |
|
|
|
* @param int $type \OCP\Lock\ILockingProvider::LOCK_SHARED or \OCP\Lock\ILockingProvider::LOCK_EXCLUSIVE |
|
|
|
* @param \OCP\Lock\ILockingProvider $provider |
|
|
|
* @throws \OCP\Lock\LockedException |
|
|
|
*/ |
|
|
|
public function releaseLock($path, $type, ILockingProvider $provider); |
|
|
|
|
|
|
|
/** |
|
|
|
* @param string $path The path of the file to change the lock for |
|
|
|
* @param int $type \OCP\Lock\ILockingProvider::LOCK_SHARED or \OCP\Lock\ILockingProvider::LOCK_EXCLUSIVE |
|
|
|
* @param \OCP\Lock\ILockingProvider $provider |
|
|
|
* @throws \OCP\Lock\LockedException |
|
|
|
*/ |
|
|
|
public function changeLock($path, $type, ILockingProvider $provider); |
|
|
|
|
|
|
|
/** |
|
|
|
* Get the contents of a directory with metadata |
|
|
|
* |
|
|
|
|