diff options
Diffstat (limited to 'lib/public/Calendar/Resource/IBackend.php')
-rw-r--r-- | lib/public/Calendar/Resource/IBackend.php | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/lib/public/Calendar/Resource/IBackend.php b/lib/public/Calendar/Resource/IBackend.php new file mode 100644 index 00000000000..23d37c102f2 --- /dev/null +++ b/lib/public/Calendar/Resource/IBackend.php @@ -0,0 +1,52 @@ +<?php + +/** + * SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later + */ +namespace OCP\Calendar\Resource; + +use OCP\Calendar\BackendTemporarilyUnavailableException; + +/** + * Interface IBackend + * + * @since 14.0.0 + */ +interface IBackend { + /** + * get a list of all resources in this backend + * + * @throws BackendTemporarilyUnavailableException + * @return IResource[] + * @since 14.0.0 + */ + public function getAllResources():array; + + /** + * get a list of all resource identifiers in this backend + * + * @throws BackendTemporarilyUnavailableException + * @return string[] + * @since 14.0.0 + */ + public function listAllResources():array; + + /** + * get a resource by it's id + * + * @param string $id + * @throws BackendTemporarilyUnavailableException + * @return IResource|null + * @since 14.0.0 + */ + public function getResource($id); + + /** + * Get unique identifier of the backend + * + * @return string + * @since 14.0.0 + */ + public function getBackendIdentifier():string; +} |