diff options
author | Julien Veyssier <julien-nc@posteo.net> | 2024-10-24 12:18:03 +0200 |
---|---|---|
committer | Julien Veyssier <julien-nc@posteo.net> | 2024-10-24 12:18:03 +0200 |
commit | dcafd36a4cb63ec82e50ce57649913f5ee0d46d2 (patch) | |
tree | 1f8c822d2908e5840ea36292d1860ae8fe88147b | |
parent | 54cebc213695ca07e7fdd830d2ba99e8526991b3 (diff) | |
download | nextcloud-server-fix/noid/textprocessing-list-types.tar.gz nextcloud-server-fix/noid/textprocessing-list-types.zip |
feat(textprocessing): factorize taskProcessingCompatibleTaskTypesfix/noid/textprocessing-list-types
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
-rw-r--r-- | lib/private/TextProcessing/Manager.php | 33 |
1 files changed, 11 insertions, 22 deletions
diff --git a/lib/private/TextProcessing/Manager.php b/lib/private/TextProcessing/Manager.php index db759cf224c..e83c4e39f9c 100644 --- a/lib/private/TextProcessing/Manager.php +++ b/lib/private/TextProcessing/Manager.php @@ -44,6 +44,13 @@ class Manager implements IManager { /** @var ?IProvider[] */ private ?array $providers = null; + private static array $taskProcessingCompatibleTaskTypes = [ + FreePromptTaskType::class => TextToText::ID, + HeadlineTaskType::class => TextToTextHeadline::ID, + SummaryTaskType::class => TextToTextSummary::ID, + TopicsTaskType::class => TextToTextTopics::ID, + ]; + public function __construct( private IServerContainer $serverContainer, private Coordinator $coordinator, @@ -84,13 +91,7 @@ class Manager implements IManager { public function hasProviders(): bool { // check if task processing equivalent types are available $taskTaskTypes = $this->taskProcessingManager->getAvailableTaskTypes(); - $taskProcessingCompatibleTaskTypes = [ - FreePromptTaskType::class => TextToText::ID, - HeadlineTaskType::class => TextToTextHeadline::ID, - SummaryTaskType::class => TextToTextSummary::ID, - TopicsTaskType::class => TextToTextTopics::ID, - ]; - foreach ($taskProcessingCompatibleTaskTypes as $textTaskTypeClass => $taskTaskTypeId) { + foreach (self::$taskProcessingCompatibleTaskTypes as $textTaskTypeClass => $taskTaskTypeId) { if (isset($taskTaskTypes[$taskTaskTypeId])) { return true; } @@ -114,13 +115,7 @@ class Manager implements IManager { // check if task processing equivalent types are available $taskTaskTypes = $this->taskProcessingManager->getAvailableTaskTypes(); - $taskProcessingCompatibleTaskTypes = [ - FreePromptTaskType::class => TextToText::ID, - HeadlineTaskType::class => TextToTextHeadline::ID, - SummaryTaskType::class => TextToTextSummary::ID, - TopicsTaskType::class => TextToTextTopics::ID, - ]; - foreach ($taskProcessingCompatibleTaskTypes as $textTaskTypeClass => $taskTaskTypeId) { + foreach (self::$taskProcessingCompatibleTaskTypes as $textTaskTypeClass => $taskTaskTypeId) { if (isset($taskTaskTypes[$taskTaskTypeId])) { $tasks[$textTaskTypeClass] = true; } @@ -139,15 +134,9 @@ class Manager implements IManager { public function runTask(OCPTask $task): string { // try to run a task processing task if possible $taskTypeClass = $task->getType(); - $taskProcessingCompatibleTaskTypes = [ - FreePromptTaskType::class => TextToText::ID, - HeadlineTaskType::class => TextToTextHeadline::ID, - SummaryTaskType::class => TextToTextSummary::ID, - TopicsTaskType::class => TextToTextTopics::ID, - ]; - if (isset($taskProcessingCompatibleTaskTypes[$taskTypeClass]) && isset($this->taskProcessingManager->getAvailableTaskTypes()[$taskProcessingCompatibleTaskTypes[$taskTypeClass]])) { + if (isset(self::$taskProcessingCompatibleTaskTypes[$taskTypeClass]) && isset($this->taskProcessingManager->getAvailableTaskTypes()[self::$taskProcessingCompatibleTaskTypes[$taskTypeClass]])) { try { - $taskProcessingTaskTypeId = $taskProcessingCompatibleTaskTypes[$taskTypeClass]; + $taskProcessingTaskTypeId = self::$taskProcessingCompatibleTaskTypes[$taskTypeClass]; $taskProcessingTask = new \OCP\TaskProcessing\Task( $taskProcessingTaskTypeId, ['input' => $task->getInput()], |