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

namespace Livekit;

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

/**
 * Generated from protobuf message <code>livekit.AgentDeployment</code>
 */
class AgentDeployment extends \Google\Protobuf\Internal\Message
{
    /**
     * Generated from protobuf field <code>string region = 1;</code>
     */
    protected $region = '';
    /**
     * Generated from protobuf field <code>string agent_id = 2 [(.logger.name) = "agentID"];</code>
     */
    protected $agent_id = '';
    /**
     * Generated from protobuf field <code>string status = 3;</code>
     */
    protected $status = '';
    /**
     * Generated from protobuf field <code>int32 replicas = 4;</code>
     */
    protected $replicas = 0;
    /**
     * Generated from protobuf field <code>int32 min_replicas = 5;</code>
     */
    protected $min_replicas = 0;
    /**
     * Generated from protobuf field <code>int32 max_replicas = 6;</code>
     */
    protected $max_replicas = 0;
    /**
     * Generated from protobuf field <code>string cpu_req = 7;</code>
     */
    protected $cpu_req = '';
    /**
     * Generated from protobuf field <code>string cur_cpu = 8;</code>
     */
    protected $cur_cpu = '';
    /**
     * Generated from protobuf field <code>string cur_mem = 9;</code>
     */
    protected $cur_mem = '';
    /**
     * Generated from protobuf field <code>string mem_req = 10;</code>
     */
    protected $mem_req = '';
    /**
     * Generated from protobuf field <code>string mem_limit = 11;</code>
     */
    protected $mem_limit = '';
    /**
     * Generated from protobuf field <code>string cpu_limit = 12;</code>
     */
    protected $cpu_limit = '';
    /**
     * Generated from protobuf field <code>string server_region = 13;</code>
     */
    protected $server_region = '';
    /**
     * Generated from protobuf field <code>repeated .livekit.AgentEvent events = 14;</code>
     */
    private $events;

    /**
     * Constructor.
     *
     * @param array $data {
     *     Optional. Data for populating the Message object.
     *
     *     @type string $region
     *     @type string $agent_id
     *     @type string $status
     *     @type int $replicas
     *     @type int $min_replicas
     *     @type int $max_replicas
     *     @type string $cpu_req
     *     @type string $cur_cpu
     *     @type string $cur_mem
     *     @type string $mem_req
     *     @type string $mem_limit
     *     @type string $cpu_limit
     *     @type string $server_region
     *     @type \Livekit\AgentEvent[] $events
     * }
     */
    public function __construct($data = NULL) {
        \GPBMetadata\LivekitCloudAgent::initOnce();
        parent::__construct($data);
    }

    /**
     * Generated from protobuf field <code>string region = 1;</code>
     * @return string
     */
    public function getRegion()
    {
        return $this->region;
    }

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

        return $this;
    }

    /**
     * Generated from protobuf field <code>string agent_id = 2 [(.logger.name) = "agentID"];</code>
     * @return string
     */
    public function getAgentId()
    {
        return $this->agent_id;
    }

    /**
     * Generated from protobuf field <code>string agent_id = 2 [(.logger.name) = "agentID"];</code>
     * @param string $var
     * @return $this
     */
    public function setAgentId($var)
    {
        GPBUtil::checkString($var, True);
        $this->agent_id = $var;

        return $this;
    }

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

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

        return $this;
    }

    /**
     * Generated from protobuf field <code>int32 replicas = 4;</code>
     * @return int
     */
    public function getReplicas()
    {
        return $this->replicas;
    }

    /**
     * Generated from protobuf field <code>int32 replicas = 4;</code>
     * @param int $var
     * @return $this
     */
    public function setReplicas($var)
    {
        GPBUtil::checkInt32($var);
        $this->replicas = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>int32 min_replicas = 5;</code>
     * @return int
     */
    public function getMinReplicas()
    {
        return $this->min_replicas;
    }

    /**
     * Generated from protobuf field <code>int32 min_replicas = 5;</code>
     * @param int $var
     * @return $this
     */
    public function setMinReplicas($var)
    {
        GPBUtil::checkInt32($var);
        $this->min_replicas = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>int32 max_replicas = 6;</code>
     * @return int
     */
    public function getMaxReplicas()
    {
        return $this->max_replicas;
    }

    /**
     * Generated from protobuf field <code>int32 max_replicas = 6;</code>
     * @param int $var
     * @return $this
     */
    public function setMaxReplicas($var)
    {
        GPBUtil::checkInt32($var);
        $this->max_replicas = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>string cpu_req = 7;</code>
     * @return string
     */
    public function getCpuReq()
    {
        return $this->cpu_req;
    }

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

        return $this;
    }

    /**
     * Generated from protobuf field <code>string cur_cpu = 8;</code>
     * @return string
     */
    public function getCurCpu()
    {
        return $this->cur_cpu;
    }

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

        return $this;
    }

    /**
     * Generated from protobuf field <code>string cur_mem = 9;</code>
     * @return string
     */
    public function getCurMem()
    {
        return $this->cur_mem;
    }

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

        return $this;
    }

    /**
     * Generated from protobuf field <code>string mem_req = 10;</code>
     * @return string
     */
    public function getMemReq()
    {
        return $this->mem_req;
    }

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

        return $this;
    }

    /**
     * Generated from protobuf field <code>string mem_limit = 11;</code>
     * @return string
     */
    public function getMemLimit()
    {
        return $this->mem_limit;
    }

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

        return $this;
    }

    /**
     * Generated from protobuf field <code>string cpu_limit = 12;</code>
     * @return string
     */
    public function getCpuLimit()
    {
        return $this->cpu_limit;
    }

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

        return $this;
    }

    /**
     * Generated from protobuf field <code>string server_region = 13;</code>
     * @return string
     */
    public function getServerRegion()
    {
        return $this->server_region;
    }

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

        return $this;
    }

    /**
     * Generated from protobuf field <code>repeated .livekit.AgentEvent events = 14;</code>
     * @return RepeatedField<\Livekit\AgentEvent>
     */
    public function getEvents()
    {
        return $this->events;
    }

    /**
     * Generated from protobuf field <code>repeated .livekit.AgentEvent events = 14;</code>
     * @param \Livekit\AgentEvent[] $var
     * @return $this
     */
    public function setEvents($var)
    {
        $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Livekit\AgentEvent::class);
        $this->events = $arr;

        return $this;
    }

}

