• Модуль: pull
  • Путь к файлу: ~/bitrix/modules/pull/lib/protobuf/request.php
  • Класс: BitrixPullProtobufRequest
  • Вызов: Request::serializedSize
public function serializedSize(ProtobufComputeSizeContext $context)
    {
        $calculator = $context->getSizeCalculator();
        $size       = 0;

        if ($this->incomingMessages !== null) {
            $innerSize = $this->incomingMessages->serializedSize($context);

            $size += 1;
            $size += $innerSize;
            $size += $calculator->computeVarintSize($innerSize);
        }

        if ($this->channelStats !== null) {
            $innerSize = $this->channelStats->serializedSize($context);

            $size += 1;
            $size += $innerSize;
            $size += $calculator->computeVarintSize($innerSize);
        }

        if ($this->serverStats !== null) {
            $innerSize = $this->serverStats->serializedSize($context);

            $size += 1;
            $size += $innerSize;
            $size += $calculator->computeVarintSize($innerSize);
        }

        if ($this->extensions !== null) {
            $size += $this->extensions->serializedSize($context);
        }

        return $size;
    }