Your IP : 3.14.134.33
<?
namespace Bitrix\Pull\Protobuf;
/**
* Generated by Protobuf protoc plugin.
*
* File descriptor : sender.proto
*/
/**
* Protobuf message : Sender
*/
class Sender extends \Protobuf\AbstractMessage
{
/**
* @var \Protobuf\UnknownFieldSet
*/
protected $unknownFieldSet = null;
/**
* @var \Protobuf\Extension\ExtensionFieldMap
*/
protected $extensions = null;
/**
* type optional enum = 1
*
* @var \Bitrix\Pull\Protobuf\SenderType
*/
protected $type = null;
/**
* id optional bytes = 2
*
* @var \Protobuf\Stream
*/
protected $id = null;
/**
* Check if 'type' has a value
*
* @return bool
*/
public function hasType()
{
return $this->type !== null;
}
/**
* Get 'type' value
*
* @return \Bitrix\Pull\Protobuf\SenderType
*/
public function getType()
{
return $this->type;
}
/**
* Set 'type' value
*
* @param \Bitrix\Pull\Protobuf\SenderType $value
*/
public function setType(\Bitrix\Pull\Protobuf\SenderType $value = null)
{
$this->type = $value;
}
/**
* Check if 'id' has a value
*
* @return bool
*/
public function hasId()
{
return $this->id !== null;
}
/**
* Get 'id' value
*
* @return \Protobuf\Stream
*/
public function getId()
{
return $this->id;
}
/**
* Set 'id' value
*
* @param \Protobuf\Stream $value
*/
public function setId($value = null)
{
if ($value !== null && ! $value instanceof \Protobuf\Stream) {
$value = \Protobuf\Stream::wrap($value);
}
$this->id = $value;
}
/**
* {@inheritdoc}
*/
public function extensions()
{
if ( $this->extensions !== null) {
return $this->extensions;
}
return $this->extensions = new \Protobuf\Extension\ExtensionFieldMap(__CLASS__);
}
/**
* {@inheritdoc}
*/
public function unknownFieldSet()
{
return $this->unknownFieldSet;
}
/**
* {@inheritdoc}
*/
public static function fromStream($stream, \Protobuf\Configuration $configuration = null)
{
return new self($stream, $configuration);
}
/**
* {@inheritdoc}
*/
public static function fromArray(array $values)
{
$message = new self();
$values = array_merge([
'type' => null,
'id' => null
], $values);
$message->setType($values['type']);
$message->setId($values['id']);
return $message;
}
/**
* {@inheritdoc}
*/
public static function descriptor()
{
return \google\protobuf\DescriptorProto::fromArray([
'name' => 'Sender',
'field' => [
\google\protobuf\FieldDescriptorProto::fromArray([
'number' => 1,
'name' => 'type',
'type' => \google\protobuf\FieldDescriptorProto\Type::TYPE_ENUM(),
'label' => \google\protobuf\FieldDescriptorProto\Label::LABEL_OPTIONAL(),
'type_name' => '.SenderType'
]),
\google\protobuf\FieldDescriptorProto::fromArray([
'number' => 2,
'name' => 'id',
'type' => \google\protobuf\FieldDescriptorProto\Type::TYPE_BYTES(),
'label' => \google\protobuf\FieldDescriptorProto\Label::LABEL_OPTIONAL()
]),
],
]);
}
/**
* {@inheritdoc}
*/
public function toStream(\Protobuf\Configuration $configuration = null)
{
$config = $configuration ?: \Protobuf\Configuration::getInstance();
$context = $config->createWriteContext();
$stream = $context->getStream();
$this->writeTo($context);
$stream->seek(0);
return $stream;
}
/**
* {@inheritdoc}
*/
public function writeTo(\Protobuf\WriteContext $context)
{
$stream = $context->getStream();
$writer = $context->getWriter();
$sizeContext = $context->getComputeSizeContext();
if ($this->type !== null) {
$writer->writeVarint($stream, 8);
$writer->writeVarint($stream, $this->type->value());
}
if ($this->id !== null) {
$writer->writeVarint($stream, 18);
$writer->writeByteStream($stream, $this->id);
}
if ($this->extensions !== null) {
$this->extensions->writeTo($context);
}
return $stream;
}
/**
* {@inheritdoc}
*/
public function readFrom(\Protobuf\ReadContext $context)
{
$reader = $context->getReader();
$length = $context->getLength();
$stream = $context->getStream();
$limit = ($length !== null)
? ($stream->tell() + $length)
: null;
while ($limit === null || $stream->tell() < $limit) {
if ($stream->eof()) {
break;
}
$key = $reader->readVarint($stream);
$wire = \Protobuf\WireFormat::getTagWireType($key);
$tag = \Protobuf\WireFormat::getTagFieldNumber($key);
if ($stream->eof()) {
break;
}
if ($tag === 1) {
\Protobuf\WireFormat::assertWireType($wire, 14);
$this->type = \Bitrix\Pull\Protobuf\SenderType::valueOf($reader->readVarint($stream));
continue;
}
if ($tag === 2) {
\Protobuf\WireFormat::assertWireType($wire, 12);
$this->id = $reader->readByteStream($stream);
continue;
}
$extensions = $context->getExtensionRegistry();
$extension = $extensions ? $extensions->findByNumber(__CLASS__, $tag) : null;
if ($extension !== null) {
$this->extensions()->add($extension, $extension->readFrom($context, $wire));
continue;
}
if ($this->unknownFieldSet === null) {
$this->unknownFieldSet = new \Protobuf\UnknownFieldSet();
}
$data = $reader->readUnknown($stream, $wire);
$unknown = new \Protobuf\Unknown($tag, $wire, $data);
$this->unknownFieldSet->add($unknown);
}
}
/**
* {@inheritdoc}
*/
public function serializedSize(\Protobuf\ComputeSizeContext $context)
{
$calculator = $context->getSizeCalculator();
$size = 0;
if ($this->type !== null) {
$size += 1;
$size += $calculator->computeVarintSize($this->type->value());
}
if ($this->id !== null) {
$size += 1;
$size += $calculator->computeByteStreamSize($this->id);
}
if ($this->extensions !== null) {
$size += $this->extensions->serializedSize($context);
}
return $size;
}
/**
* {@inheritdoc}
*/
public function clear()
{
$this->type = null;
$this->id = null;
}
/**
* {@inheritdoc}
*/
public function merge(\Protobuf\Message $message)
{
if ( ! $message instanceof \Bitrix\Pull\Protobuf\Sender) {
throw new \InvalidArgumentException(sprintf('Argument 1 passed to %s must be a %s, %s given', __METHOD__, __CLASS__, get_class($message)));
}
$this->type = ($message->type !== null) ? $message->type : $this->type;
$this->id = ($message->id !== null) ? $message->id : $this->id;
}
}