nextcloud/lib/private/Metadata/IMetadataManager.php
Carl Schwan 7817845538 Add a metadata service to store file metadata
Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-04-13 14:06:29 +02:00

35 lines
768 B
PHP

<?php
declare(strict_types=1);
namespace OC\Metadata;
use OCP\Files\File;
/**
* Interface to manage additional metadata for files
*/
interface IMetadataManager {
/**
* @param class-string<IMetadataProvider> $className
*/
public function registerProvider(string $className): void;
/**
* Generate the metadata for one file
*/
public function generateMetadata(File $file, bool $checkExisting = false): void;
/**
* Clear the metadata for one file
*/
public function clearMetadata(int $fileId): void;
/** @return array<int, FileMetadata> */
public function fetchMetadataFor(string $group, array $fileIds): array;
/**
* Get the capabilites as an array of mimetype regex to the type provided
*/
public function getCapabilities(): array;
}