<?php
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# NO CHECKED-IN PROTOBUF GENCODE
# source: plugnmeet_common_api.proto

namespace Mynaparrot\PlugnmeetProto;

use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\GPBUtil;
use Google\Protobuf\RepeatedField;

/**
 * Generated from protobuf message <code>plugnmeet.VerifyTokenRes</code>
 */
class VerifyTokenRes extends \Google\Protobuf\Internal\Message
{
    /**
     * Generated from protobuf field <code>bool status = 1;</code>
     */
    protected $status = false;
    /**
     * Generated from protobuf field <code>string msg = 2;</code>
     */
    protected $msg = '';
    /**
     * Generated from protobuf field <code>repeated string nats_ws_urls = 3;</code>
     */
    private $nats_ws_urls;
    /**
     * Generated from protobuf field <code>optional string server_version = 4;</code>
     */
    protected $server_version = null;
    /**
     * Generated from protobuf field <code>optional string room_id = 5;</code>
     */
    protected $room_id = null;
    /**
     * Generated from protobuf field <code>optional string user_id = 6;</code>
     */
    protected $user_id = null;
    /**
     * Generated from protobuf field <code>optional string room_stream_name = 7;</code>
     */
    protected $room_stream_name = null;
    /**
     * Generated from protobuf field <code>optional .plugnmeet.NatsSubjects nats_subjects = 8;</code>
     */
    protected $nats_subjects = null;
    /**
     * Generated from protobuf field <code>optional bool enabled_self_insert_encryption_key = 9;</code>
     */
    protected $enabled_self_insert_encryption_key = null;
    /**
     * Generated from protobuf field <code>optional bool is_cloud = 10;</code>
     */
    protected $is_cloud = null;

    /**
     * Constructor.
     *
     * @param array $data {
     *     Optional. Data for populating the Message object.
     *
     *     @type bool $status
     *     @type string $msg
     *     @type string[] $nats_ws_urls
     *     @type string $server_version
     *     @type string $room_id
     *     @type string $user_id
     *     @type string $room_stream_name
     *     @type \Mynaparrot\PlugnmeetProto\NatsSubjects $nats_subjects
     *     @type bool $enabled_self_insert_encryption_key
     *     @type bool $is_cloud
     * }
     */
    public function __construct($data = NULL) {
        \GPBMetadata\PlugnmeetCommonApi::initOnce();
        parent::__construct($data);
    }

    /**
     * Generated from protobuf field <code>bool status = 1;</code>
     * @return bool
     */
    public function getStatus()
    {
        return $this->status;
    }

    /**
     * Generated from protobuf field <code>bool status = 1;</code>
     * @param bool $var
     * @return $this
     */
    public function setStatus($var)
    {
        GPBUtil::checkBool($var);
        $this->status = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>string msg = 2;</code>
     * @return string
     */
    public function getMsg()
    {
        return $this->msg;
    }

    /**
     * Generated from protobuf field <code>string msg = 2;</code>
     * @param string $var
     * @return $this
     */
    public function setMsg($var)
    {
        GPBUtil::checkString($var, True);
        $this->msg = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>repeated string nats_ws_urls = 3;</code>
     * @return RepeatedField<string>
     */
    public function getNatsWsUrls()
    {
        return $this->nats_ws_urls;
    }

    /**
     * Generated from protobuf field <code>repeated string nats_ws_urls = 3;</code>
     * @param string[] $var
     * @return $this
     */
    public function setNatsWsUrls($var)
    {
        $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::STRING);
        $this->nats_ws_urls = $arr;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional string server_version = 4;</code>
     * @return string
     */
    public function getServerVersion()
    {
        return isset($this->server_version) ? $this->server_version : '';
    }

    public function hasServerVersion()
    {
        return isset($this->server_version);
    }

    public function clearServerVersion()
    {
        unset($this->server_version);
    }

    /**
     * Generated from protobuf field <code>optional string server_version = 4;</code>
     * @param string $var
     * @return $this
     */
    public function setServerVersion($var)
    {
        GPBUtil::checkString($var, True);
        $this->server_version = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional string room_id = 5;</code>
     * @return string
     */
    public function getRoomId()
    {
        return isset($this->room_id) ? $this->room_id : '';
    }

    public function hasRoomId()
    {
        return isset($this->room_id);
    }

    public function clearRoomId()
    {
        unset($this->room_id);
    }

    /**
     * Generated from protobuf field <code>optional string room_id = 5;</code>
     * @param string $var
     * @return $this
     */
    public function setRoomId($var)
    {
        GPBUtil::checkString($var, True);
        $this->room_id = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional string user_id = 6;</code>
     * @return string
     */
    public function getUserId()
    {
        return isset($this->user_id) ? $this->user_id : '';
    }

    public function hasUserId()
    {
        return isset($this->user_id);
    }

    public function clearUserId()
    {
        unset($this->user_id);
    }

    /**
     * Generated from protobuf field <code>optional string user_id = 6;</code>
     * @param string $var
     * @return $this
     */
    public function setUserId($var)
    {
        GPBUtil::checkString($var, True);
        $this->user_id = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional string room_stream_name = 7;</code>
     * @return string
     */
    public function getRoomStreamName()
    {
        return isset($this->room_stream_name) ? $this->room_stream_name : '';
    }

    public function hasRoomStreamName()
    {
        return isset($this->room_stream_name);
    }

    public function clearRoomStreamName()
    {
        unset($this->room_stream_name);
    }

    /**
     * Generated from protobuf field <code>optional string room_stream_name = 7;</code>
     * @param string $var
     * @return $this
     */
    public function setRoomStreamName($var)
    {
        GPBUtil::checkString($var, True);
        $this->room_stream_name = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional .plugnmeet.NatsSubjects nats_subjects = 8;</code>
     * @return \Mynaparrot\PlugnmeetProto\NatsSubjects|null
     */
    public function getNatsSubjects()
    {
        return $this->nats_subjects;
    }

    public function hasNatsSubjects()
    {
        return isset($this->nats_subjects);
    }

    public function clearNatsSubjects()
    {
        unset($this->nats_subjects);
    }

    /**
     * Generated from protobuf field <code>optional .plugnmeet.NatsSubjects nats_subjects = 8;</code>
     * @param \Mynaparrot\PlugnmeetProto\NatsSubjects $var
     * @return $this
     */
    public function setNatsSubjects($var)
    {
        GPBUtil::checkMessage($var, \Mynaparrot\PlugnmeetProto\NatsSubjects::class);
        $this->nats_subjects = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional bool enabled_self_insert_encryption_key = 9;</code>
     * @return bool
     */
    public function getEnabledSelfInsertEncryptionKey()
    {
        return isset($this->enabled_self_insert_encryption_key) ? $this->enabled_self_insert_encryption_key : false;
    }

    public function hasEnabledSelfInsertEncryptionKey()
    {
        return isset($this->enabled_self_insert_encryption_key);
    }

    public function clearEnabledSelfInsertEncryptionKey()
    {
        unset($this->enabled_self_insert_encryption_key);
    }

    /**
     * Generated from protobuf field <code>optional bool enabled_self_insert_encryption_key = 9;</code>
     * @param bool $var
     * @return $this
     */
    public function setEnabledSelfInsertEncryptionKey($var)
    {
        GPBUtil::checkBool($var);
        $this->enabled_self_insert_encryption_key = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional bool is_cloud = 10;</code>
     * @return bool
     */
    public function getIsCloud()
    {
        return isset($this->is_cloud) ? $this->is_cloud : false;
    }

    public function hasIsCloud()
    {
        return isset($this->is_cloud);
    }

    public function clearIsCloud()
    {
        unset($this->is_cloud);
    }

    /**
     * Generated from protobuf field <code>optional bool is_cloud = 10;</code>
     * @param bool $var
     * @return $this
     */
    public function setIsCloud($var)
    {
        GPBUtil::checkBool($var);
        $this->is_cloud = $var;

        return $this;
    }

}

