0
0
mirror of https://github.com/nextcloud/server.git synced 2024-11-14 12:26:49 +00:00
nextcloud_server/lib/public/Share/IProviderFactory.php
Andy Scherzinger dae7c159f7
chore: Add SPDX header
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-05-24 13:11:22 +02:00

46 lines
857 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\Share;
use OC\Share20\Exception\ProviderException;
/**
* Interface IProviderFactory
*
* @since 9.0.0
*/
interface IProviderFactory {
/**
* @param string $id
* @return IShareProvider
* @throws ProviderException
* @since 9.0.0
*/
public function getProvider($id);
/**
* @param int $shareType
* @return IShareProvider
* @throws ProviderException
* @since 9.0.0
*/
public function getProviderForType($shareType);
/**
* @return IShareProvider[]
* @since 11.0.0
*/
public function getAllProviders();
/**
* @since 21.0.0
* @param string $shareProvier
*/
public function registerProvider(string $shareProvier): void;
}