mirror of
https://github.com/nextcloud/server.git
synced 2025-01-30 22:37:01 +00:00
f28e74b7a8
Signed-off-by: provokateurin <kate@provokateurin.de>
33 lines
913 B
PHP
33 lines
913 B
PHP
<?php
|
|
|
|
/**
|
|
* SPDX-FileCopyrightText: 2016-2024 Nextcloud GmbH and Nextcloud contributors
|
|
* SPDX-FileCopyrightText: 2016 ownCloud, Inc.
|
|
* SPDX-License-Identifier: AGPL-3.0-only
|
|
*/
|
|
namespace OCP\Files\Storage;
|
|
|
|
use OCP\Files\Mount\IMountPoint;
|
|
|
|
/**
|
|
* Creates storage instances and manages and applies storage wrappers
|
|
* @since 8.0.0
|
|
*/
|
|
interface IStorageFactory {
|
|
/**
|
|
* allow modifier storage behaviour by adding wrappers around storages
|
|
*
|
|
* $callback should be a function of type (string $mountPoint, Storage $storage) => Storage
|
|
*
|
|
* @return bool true if the wrapper was added, false if there was already a wrapper with this
|
|
* name registered
|
|
* @since 8.0.0
|
|
*/
|
|
public function addStorageWrapper(string $wrapperName, callable $callback);
|
|
|
|
/**
|
|
* @return IStorage
|
|
* @since 8.0.0
|
|
*/
|
|
public function getInstance(IMountPoint $mountPoint, string $class, array $arguments);
|
|
}
|