aboutsummaryrefslogtreecommitdiffstats
path: root/lib/public/Files/Cache/IFileAccess.php
diff options
context:
space:
mode:
Diffstat (limited to 'lib/public/Files/Cache/IFileAccess.php')
-rw-r--r--lib/public/Files/Cache/IFileAccess.php53
1 files changed, 34 insertions, 19 deletions
diff --git a/lib/public/Files/Cache/IFileAccess.php b/lib/public/Files/Cache/IFileAccess.php
index 87918bf332d..7a993d81e7a 100644
--- a/lib/public/Files/Cache/IFileAccess.php
+++ b/lib/public/Files/Cache/IFileAccess.php
@@ -3,25 +3,8 @@
declare(strict_types=1);
/**
- * @copyright Copyright (c) 2024 Robin Appelman <robin@icewind.nl>
- *
- * @author Robin Appelman <robin@icewind.nl>
- *
- * @license GNU AGPL version 3 or any later version
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as
- * published by the Free Software Foundation, either version 3 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Affero General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
+ * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
+ * SPDX-License-Identifier: AGPL-3.0-or-later
*/
namespace OCP\Files\Cache;
@@ -96,4 +79,36 @@ interface IFileAccess {
* @since 29.0.0
*/
public function getByFileIdsInStorage(array $fileIds, int $storageId): array;
+
+ /**
+ * Retrieves files stored in a specific storage that have a specified ancestor in the file hierarchy.
+ * Allows filtering by mime types, encryption status, and limits the number of results.
+ *
+ * @param int $storageId The ID of the storage to search within.
+ * @param int $folderId The file ID of the ancestor to base the search on.
+ * @param int $fileIdCursor The last processed file ID. Only files with a higher ID will be included. Defaults to 0.
+ * @param int $maxResults The maximum number of results to retrieve. If set to 0, all matching files will be retrieved.
+ * @param list<int> $mimeTypeIds An array of mime types to filter the results. If empty, no mime type filtering will be applied.
+ * @param bool $endToEndEncrypted Whether to include EndToEndEncrypted files
+ * @param bool $serverSideEncrypted Whether to include ServerSideEncrypted files
+ * @return \Generator<ICacheEntry> A generator yielding matching files as cache entries.
+ * @throws \OCP\DB\Exception
+ *
+ * @since 32.0.0
+ */
+ public function getByAncestorInStorage(int $storageId, int $folderId, int $fileIdCursor = 0, int $maxResults = 100, array $mimeTypeIds = [], bool $endToEndEncrypted = true, bool $serverSideEncrypted = true): \Generator;
+
+ /**
+ * Retrieves a list of all distinct mounts.
+ * Allows filtering by specific mount providers.
+ * Optionally rewrites home directory root paths to avoid cache and trashbin.
+ *
+ * @param list<string> $mountProviders An array of mount provider class names to filter. If empty, all providers will be included.
+ * @param bool $onlyUserFilesMounts Whether to rewrite the root IDs for home directories to only include user files and to only consider mounts with mount points in the user files.
+ * @return \Generator<array{storage_id: int, root_id: int, overridden_root: int}> A generator yielding mount configurations as an array containing 'storage_id', 'root_id', and 'override_root'.
+ * @throws \OCP\DB\Exception
+ *
+ * @since 32.0.0
+ */
+ public function getDistinctMounts(array $mountProviders = [], bool $onlyUserFilesMounts = true): \Generator;
}
"nt">"Shared with {email} by {actor}" : "Compartido con {email} por {actor}", "Password for mail share sent to %1$s" : "La contraseña para el elemento compartido fue enviada a %1$s", "Password for mail share sent to {email}" : "La contraseña para el elemento compartido fue enviada a {email}", "Password for mail share sent to you" : "La contraseña para el elemento compartido se te ha enviado", "You shared %1$s with %2$s by mail" : "Compartiste %1$s con %2$s por correo", "You shared {file} with {email} by mail" : "Compartiste {file} con {email} por correo", "%3$s shared %1$s with %2$s by mail" : "%3$s compartió %1$s con %2$s por correo ", "{actor} shared {file} with {email} by mail" : "{actor} compartió {file} con {email} por correo", "Password to access %1$s was sent to %2s" : "La contraseña para acceder %1$s fue enviada a %2s", "Password to access {file} was sent to {email}" : "La contraseña para acceder {file} ha sido enviada a {email}", "Password to access %1$s was sent to you" : "La contraseña para acceder %1$s se te ha enviado", "Password to access {file} was sent to you" : "La contraseña para acceder {file} se te ha sido enviada", "Sharing %s failed, this item is already shared with %s" : "Se presentó una falla al compartir %s, este elemento ya ha sido compartido con %s", "We can't send you the auto-generated password. Please set a valid email address in your personal settings and try again." : "No es posible enviarte la contraseña auto-generada. Por favor establece una dirección de correo electrónico váilida en tus configuraciones personales y vuelve a intentarlo.", "Failed to send share by email" : "Se presentó una falla al enviar el elemento compartido por correo electrónico", "%s shared »%s« with you" : "%s ha compartido »%s« contigo", "%s shared »%s« with you." : "%s ha compartido »%s« contigo", "Click the button below to open it." : "Haz click en el botón de abajo para abrirlo.", "Open »%s«" : "Abrir »%s«", "%s via %s" : "%s vía %s", "%s shared »%s« with you.\nYou should have already received a separate mail with a link to access it.\n" : "%s compartió »%s« contigo.\nDeberías haber recibido ya un correo por separado con la liga para accederlo. \n", "%s shared »%s« with you. You should have already received a separate mail with a link to access it." : "%s compartió »%s« contigo. Ya deberías haber recibido un correo aparte con la liga para accederlo. ", "Password to access »%s« shared to you by %s" : "Contraseña para acceder »%s« compartido contigo por %s ", "Password to access »%s«" : "Contraseña para acceder »%s«", "It is protected with the following password: %s" : "Está protegido con la siguiente contraseña: %s", "You just shared »%s« with %s. The share was already send to the recipient. Due to the security policies defined by the administrator of %s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "Acabas de compartir »%s« con %s. El elemento compartido ya ha sido enviado al destinatario. Debido a las políticas de seguridad definidas por el administrador de %s cada elelento compartido debe ser protegido por una contraseña y no se permite enviar la contraseña directamente al destinatario. Por lo tanto necesitas reenviar la contaseña manualmente al destinatario. ", "Password to access »%s« shared with %s" : "La contraseña para acceder »%s« ha sido compartida con %s", "This is the password: %s" : "Esta es la contraseña: %s", "You can choose a different password at any time in the share dialog." : "Puedes elegir una contraseña diferente en cualquier momento en la ventana de diálogo de compartir. ", "Could not find share" : "No fue posible encontrar el elemento compartido", "Share by mail" : "Compartir por correo", "Allows users to share a personalized link to a file or folder by putting in an email address." : "Le permite a los usuarios compartir una liga personalizada a un archivo o carpeta colocando una dirección de correo eletrónico. ", "Send password by mail" : "La contraseña ha sido enviada por correo", "Enforce password protection" : "Forzar protección con contraseña", "Failed to send share by E-mail" : "Se presentó una falla al enviar el recurso compartido por correo electrónico" },"pluralForm" :"nplurals=2; plural=(n != 1);" }