From 7be3a18f13aff1382f0830319f81ab85358ecc05 Mon Sep 17 00:00:00 2001 From: Marcel Klehr Date: Fri, 30 Aug 2024 08:26:55 +0200 Subject: [PATCH] fix(TaskProcessing): Use OCP\Server::get instead of copying methods Signed-off-by: Marcel Klehr Signed-off-by: Julien Veyssier --- lib/private/TaskProcessing/Manager.php | 50 +++----------------------- 1 file changed, 5 insertions(+), 45 deletions(-) diff --git a/lib/private/TaskProcessing/Manager.php b/lib/private/TaskProcessing/Manager.php index fb0a4da4c4e..8a5d64e351f 100644 --- a/lib/private/TaskProcessing/Manager.php +++ b/lib/private/TaskProcessing/Manager.php @@ -36,6 +36,7 @@ use OCP\IL10N; use OCP\IServerContainer; use OCP\L10N\IFactory; use OCP\Lock\LockedException; +use OCP\SpeechToText\ISpeechToTextManager; use OCP\SpeechToText\ISpeechToTextProvider; use OCP\SpeechToText\ISpeechToTextProviderWithId; use OCP\TaskProcessing\EShapeType; @@ -95,31 +96,9 @@ class Manager implements IManager { $this->appData = $appDataFactory->get('core'); } - - /** - * This is almost a copy of textProcessingManager->getProviders - * to avoid a dependency cycle between TextProcessingManager and TaskProcessingManager - */ private function _getRawTextProcessingProviders(): array { - $context = $this->coordinator->getRegistrationContext(); - if ($context === null) { - return []; - } - - $providers = []; - - foreach ($context->getTextProcessingProviders() as $providerServiceRegistration) { - $class = $providerServiceRegistration->getService(); - try { - $providers[$class] = $this->serverContainer->get($class); - } catch (\Throwable $e) { - $this->logger->error('Failed to load Text processing provider ' . $class, [ - 'exception' => $e, - ]); - } - } - - return $providers; + $textProcessingManager = \OCP\Server::get(\OCP\TextProcessing\IManager::class); + return $textProcessingManager->getProviders(); } private function _getTextProcessingProviders(): array { @@ -368,28 +347,9 @@ class Manager implements IManager { return $newProviders; } - /** - * This is almost a copy of SpeechToTextManager->getProviders - * to avoid a dependency cycle between SpeechToTextManager and TaskProcessingManager - */ private function _getRawSpeechToTextProviders(): array { - $context = $this->coordinator->getRegistrationContext(); - if ($context === null) { - return []; - } - $providers = []; - foreach ($context->getSpeechToTextProviders() as $providerServiceRegistration) { - $class = $providerServiceRegistration->getService(); - try { - $providers[$class] = $this->serverContainer->get($class); - } catch (NotFoundExceptionInterface|ContainerExceptionInterface|\Throwable $e) { - $this->logger->error('Failed to load SpeechToText provider ' . $class, [ - 'exception' => $e, - ]); - } - } - - return $providers; + $speechToTextManager = \OCP\Server::get(ISpeechToTextManager::class); + return $speechToTextManager->getProviders(); } /**