0
0
Fork 0
mirror of https://github.com/nextcloud/server.git synced 2025-05-08 15:50:43 +00:00
nextcloud_server/lib/public/Files/ObjectStore/IObjectStoreMetaData.php
Robin Appelman fcde776683
feat: add command to list objects
Signed-off-by: Robin Appelman <robin@icewind.nl>
2025-03-31 14:30:40 +02:00

38 lines
910 B
PHP

<?php
/**
* SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-only
*/
namespace OCP\Files\ObjectStore;
/**
* Interface IObjectStoreMetaData
*
* @psalm-type ObjectMetaData = array{mtime?: \DateTime, etag?: string, size?: int, mimetype?: string, filename?: string}
*
* @since 32.0.0
*/
interface IObjectStoreMetaData {
/**
* Get metadata for an object.
*
* @param string $urn
* @return ObjectMetaData
*
* @since 32.0.0
*/
public function getObjectMetaData(string $urn): array;
/**
* List all objects in the object store.
*
* If the object store implementation can do it efficiently, the metadata for each object is also included.
*
* @param string $prefix
* @return \Iterator<array{urn: string, metadata: ?ObjectMetaData}>
*
* @since 32.0.0
*/
public function listObjects(string $prefix = ''): \Iterator;
}