• Модуль: pull
  • Путь к файлу: ~/bitrix/modules/pull/lib/protobuf/incomingmessage.php
  • Класс: BitrixPullProtobufIncomingMessage
  • Вызов: IncomingMessage::writeTo
public function writeTo(ProtobufWriteContext $context)
    {
        $stream      = $context->getStream();
        $writer      = $context->getWriter();
        $sizeContext = $context->getComputeSizeContext();

        if ($this->receivers !== null) {
            foreach ($this->receivers as $val) {
                $writer->writeVarint($stream, 10);
                $writer->writeVarint($stream, $val->serializedSize($sizeContext));
                $val->writeTo($context);
            }
        }

        if ($this->sender !== null) {
            $writer->writeVarint($stream, 18);
            $writer->writeVarint($stream, $this->sender->serializedSize($sizeContext));
            $this->sender->writeTo($context);
        }

        if ($this->body !== null) {
            $writer->writeVarint($stream, 26);
            $writer->writeString($stream, $this->body);
        }

        if ($this->expiry !== null) {
            $writer->writeVarint($stream, 32);
            $writer->writeVarint($stream, $this->expiry);
        }

        if ($this->type !== null) {
            $writer->writeVarint($stream, 42);
            $writer->writeString($stream, $this->type);
        }

        if ($this->extensions !== null) {
            $this->extensions->writeTo($context);
        }

        return $stream;
    }