1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
UpdateGroupHandler.php
См. документацию.
1<?php
2
3declare(strict_types=1);
4
5namespace Bitrix\Socialnetwork\Collab\Converter\Handler;
6
7use Bitrix\Main\DI\ServiceLocator;
8use Bitrix\Main\Result;
9use Bitrix\Socialnetwork\Collab\Control\Command\CollabUpdateCommand;
10use Bitrix\Socialnetwork\Collab\Converter\Command\AbstractConverterCommand;
11use Bitrix\Socialnetwork\Control\AbstractGroupService;
12use Bitrix\Socialnetwork\Control\Command\UpdateCommand;
13
15{
16 public function __construct(private readonly UpdateCommand $updateCommand)
17 {
18 }
19
20 public function execute(AbstractConverterCommand $command): Result
21 {
22 $result = new Result();
23 $updateResult = $this->getService()->update($this->updateCommand);
24
25 if (!$updateResult->isSuccess())
26 {
27 $result->addErrors($updateResult->getErrors());
28 }
29
30 return $result;
31 }
32
33 private function getService(): AbstractGroupService
34 {
35 $locator = ServiceLocator::getInstance();
36
37 return match (true) {
38 $this->updateCommand instanceof CollabUpdateCommand => $locator->get('socialnetwork.collab.service'),
39 default => $locator->get('socialnetwork.group.service'),
40 };
41 }
42}
__construct(private readonly UpdateCommand $updateCommand)
Определения UpdateGroupHandler.php:16
execute(AbstractConverterCommand $command)
Определения UpdateGroupHandler.php:20
$result
Определения get_property_values.php:14