diff options
author | Côme Chilliet <91878298+come-nc@users.noreply.github.com> | 2025-03-20 11:55:22 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-03-20 11:55:22 +0100 |
commit | 569b21fdfe659af70aa7f9c23e8def2f96a20c3c (patch) | |
tree | 4eee2c4b8165505ca42ad3a41a5507951bccef57 /apps/files/lib | |
parent | f938e8255b4ccc8a0f585902998b78c558588989 (diff) | |
parent | a697da30634a19d78a7410e0102c7c5ec7a875cd (diff) | |
download | nextcloud-server-569b21fdfe659af70aa7f9c23e8def2f96a20c3c.tar.gz nextcloud-server-569b21fdfe659af70aa7f9c23e8def2f96a20c3c.zip |
Merge pull request #51568 from nextcloud/feat/add-wcf-cap
feat(files): Add capability for clients to check WCF state
Diffstat (limited to 'apps/files/lib')
-rw-r--r-- | apps/files/lib/AdvancedCapabilities.php | 38 | ||||
-rw-r--r-- | apps/files/lib/AppInfo/Application.php | 2 |
2 files changed, 40 insertions, 0 deletions
diff --git a/apps/files/lib/AdvancedCapabilities.php b/apps/files/lib/AdvancedCapabilities.php new file mode 100644 index 00000000000..22f990f0cf8 --- /dev/null +++ b/apps/files/lib/AdvancedCapabilities.php @@ -0,0 +1,38 @@ +<?php + +declare(strict_types=1); + +/** + * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later + */ +namespace OCA\Files; + +use OCA\Files\Service\SettingsService; +use OCP\Capabilities\ICapability; +use OCP\Capabilities\IInitialStateExcludedCapability; + +/** + * Capabilities not needed for every request. + * This capabilities might be hard to compute or no used by the webui. + */ +class AdvancedCapabilities implements ICapability, IInitialStateExcludedCapability { + + public function __construct( + protected SettingsService $service, + ) { + } + + /** + * Return this classes capabilities + * + * @return array{files: array{'windows_compatible_filenames': bool}} + */ + public function getCapabilities(): array { + return [ + 'files' => [ + 'windows_compatible_filenames' => $this->service->hasFilesWindowsSupport(), + ], + ]; + } +} diff --git a/apps/files/lib/AppInfo/Application.php b/apps/files/lib/AppInfo/Application.php index 8d00912f7bb..4b3948d43b5 100644 --- a/apps/files/lib/AppInfo/Application.php +++ b/apps/files/lib/AppInfo/Application.php @@ -9,6 +9,7 @@ declare(strict_types=1); namespace OCA\Files\AppInfo; use Closure; +use OCA\Files\AdvancedCapabilities; use OCA\Files\Capabilities; use OCA\Files\Collaboration\Resources\Listener; use OCA\Files\Collaboration\Resources\ResourceProvider; @@ -107,6 +108,7 @@ class Application extends App implements IBootstrap { * Register capabilities */ $context->registerCapability(Capabilities::class); + $context->registerCapability(AdvancedCapabilities::class); $context->registerCapability(DirectEditingCapabilities::class); $context->registerDeclarativeSettings(DeclarativeAdminSettings::class); |