• Модуль: im
  • Путь к файлу: ~/bitrix/modules/im/lib/V2/Message/Params.php
  • Класс: BitrixImV2MessageParams
  • Вызов: Params::load
public function load($source): Result
{
	if (is_array($source))
	{
		$result = $this->initByArray($source);
	}
	elseif ($source instanceof ORMObjectifyCollection)
	{
		$result = $this->initByEntitiesCollection($source);
	}
	elseif ($source instanceof ORMObjectifyEntityObject)
	{
		$result = $this->initByDataEntity($source);
	}
	else
	{
		$result = (new Result)->addError(new Error(Error::NOT_FOUND));
	}

	if ($result->isSuccess())
	{
		foreach ($this as $param)
		{
			if ($param->getMessageId())
			{
				$this->setMessageId($param->getMessageId());
				break;
			}
		}

		$this->isLoaded = true;
	}

	return $result;
}