• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/internals/providerbuilderbase.php
  • Класс: BitrixSaleInternalsProviderBuilderBase
  • Вызов: ProviderBuilderBase::callTransferMethod
protected function callTransferMethod($className, $methodName, SaleResult $result = null)
{
	if (!class_exists($className))
	{
		throw new MainArgumentOutOfRangeException('className');
	}

	/**
	 * @var TransferProviderBase $transfer
	 * @var TransferProviderBase $className
	 */
	$transfer = $className::create($this->getProviderClass(), $this->getContext());
	if (!method_exists($transfer, $methodName))
	{
		throw new MainArgumentOutOfRangeException('methodName');
	}

	if ($result)
	{
		$r = $transfer->$methodName($this->getItems(), $result);
	}
	else
	{
		$r = $transfer->$methodName($this->getItems());
	}

	return $r;

}