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

namespace OS\PB;

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

/**
 * Generated from protobuf message <code>OS.PB.AccessMetric</code>
 */
class AccessMetric extends \Google\Protobuf\Internal\Message
{
    /**
     * the minimum time taken to perform access control since last metric
     *
     * Generated from protobuf field <code>uint32 ControlTimeTakenMin = 2;</code>
     */
    protected $ControlTimeTakenMin = 0;
    /**
     * the maximum time taken to perform access control since last metric
     *
     * Generated from protobuf field <code>uint32 ControlTimeTakenMax = 3;</code>
     */
    protected $ControlTimeTakenMax = 0;
    /**
     * how many users are configured
     *
     * Generated from protobuf field <code>uint32 MethodsTotal = 5;</code>
     */
    protected $MethodsTotal = 0;
    /**
     * the maximum time it took to select a method from the table
     *
     * Generated from protobuf field <code>uint32 MethodSelectTimeMax = 6;</code>
     */
    protected $MethodSelectTimeMax = 0;
    /**
     * the maximum time it took to update a method to the table
     *
     * Generated from protobuf field <code>uint32 MethodAppendTimeMax = 7;</code>
     */
    protected $MethodAppendTimeMax = 0;
    /**
     * how many rights are configured
     *
     * Generated from protobuf field <code>uint32 RightsTotal = 8;</code>
     */
    protected $RightsTotal = 0;
    /**
     * the maximum time it took to select a rights from the table
     *
     * Generated from protobuf field <code>uint32 RightsSelectTimeMax = 9;</code>
     */
    protected $RightsSelectTimeMax = 0;
    /**
     * the maximum time it took to update a rights to the table
     *
     * Generated from protobuf field <code>uint32 RightsAppendTimeMax = 10;</code>
     */
    protected $RightsAppendTimeMax = 0;
    /**
     * how many users are configured
     *
     * Generated from protobuf field <code>uint32 UsersTotal = 11;</code>
     */
    protected $UsersTotal = 0;
    /**
     * the maximum time it took to select a user from the table
     *
     * Generated from protobuf field <code>uint32 UsersSelectTimeMax = 12;</code>
     */
    protected $UsersSelectTimeMax = 0;
    /**
     * the maximum time it took to update a user to the table
     *
     * Generated from protobuf field <code>uint32 UsersAppendTimeMax = 13;</code>
     */
    protected $UsersAppendTimeMax = 0;
    /**
     * the maximum time it took to select a user's redemptions
     *
     * Generated from protobuf field <code>uint32 UserRedeemSelectTimeMax = 14;</code>
     */
    protected $UserRedeemSelectTimeMax = 0;
    /**
     * the maximum time it took to update a user's redemptions
     *
     * Generated from protobuf field <code>uint32 UserRedeemAppendTimeMax = 15;</code>
     */
    protected $UserRedeemAppendTimeMax = 0;

    /**
     * Constructor.
     *
     * @param array $data {
     *     Optional. Data for populating the Message object.
     *
     *     @type int $ControlTimeTakenMin
     *           the minimum time taken to perform access control since last metric
     *     @type int $ControlTimeTakenMax
     *           the maximum time taken to perform access control since last metric
     *     @type int $MethodsTotal
     *           how many users are configured
     *     @type int $MethodSelectTimeMax
     *           the maximum time it took to select a method from the table
     *     @type int $MethodAppendTimeMax
     *           the maximum time it took to update a method to the table
     *     @type int $RightsTotal
     *           how many rights are configured
     *     @type int $RightsSelectTimeMax
     *           the maximum time it took to select a rights from the table
     *     @type int $RightsAppendTimeMax
     *           the maximum time it took to update a rights to the table
     *     @type int $UsersTotal
     *           how many users are configured
     *     @type int $UsersSelectTimeMax
     *           the maximum time it took to select a user from the table
     *     @type int $UsersAppendTimeMax
     *           the maximum time it took to update a user to the table
     *     @type int $UserRedeemSelectTimeMax
     *           the maximum time it took to select a user's redemptions
     *     @type int $UserRedeemAppendTimeMax
     *           the maximum time it took to update a user's redemptions
     * }
     */
    public function __construct($data = NULL) {
        \GPBMetadata\Access::initOnce();
        parent::__construct($data);
    }

    /**
     * the minimum time taken to perform access control since last metric
     *
     * Generated from protobuf field <code>uint32 ControlTimeTakenMin = 2;</code>
     * @return int
     */
    public function getControlTimeTakenMin()
    {
        return $this->ControlTimeTakenMin;
    }

    /**
     * the minimum time taken to perform access control since last metric
     *
     * Generated from protobuf field <code>uint32 ControlTimeTakenMin = 2;</code>
     * @param int $var
     * @return $this
     */
    public function setControlTimeTakenMin($var)
    {
        GPBUtil::checkUint32($var);
        $this->ControlTimeTakenMin = $var;

        return $this;
    }

    /**
     * the maximum time taken to perform access control since last metric
     *
     * Generated from protobuf field <code>uint32 ControlTimeTakenMax = 3;</code>
     * @return int
     */
    public function getControlTimeTakenMax()
    {
        return $this->ControlTimeTakenMax;
    }

    /**
     * the maximum time taken to perform access control since last metric
     *
     * Generated from protobuf field <code>uint32 ControlTimeTakenMax = 3;</code>
     * @param int $var
     * @return $this
     */
    public function setControlTimeTakenMax($var)
    {
        GPBUtil::checkUint32($var);
        $this->ControlTimeTakenMax = $var;

        return $this;
    }

    /**
     * how many users are configured
     *
     * Generated from protobuf field <code>uint32 MethodsTotal = 5;</code>
     * @return int
     */
    public function getMethodsTotal()
    {
        return $this->MethodsTotal;
    }

    /**
     * how many users are configured
     *
     * Generated from protobuf field <code>uint32 MethodsTotal = 5;</code>
     * @param int $var
     * @return $this
     */
    public function setMethodsTotal($var)
    {
        GPBUtil::checkUint32($var);
        $this->MethodsTotal = $var;

        return $this;
    }

    /**
     * the maximum time it took to select a method from the table
     *
     * Generated from protobuf field <code>uint32 MethodSelectTimeMax = 6;</code>
     * @return int
     */
    public function getMethodSelectTimeMax()
    {
        return $this->MethodSelectTimeMax;
    }

    /**
     * the maximum time it took to select a method from the table
     *
     * Generated from protobuf field <code>uint32 MethodSelectTimeMax = 6;</code>
     * @param int $var
     * @return $this
     */
    public function setMethodSelectTimeMax($var)
    {
        GPBUtil::checkUint32($var);
        $this->MethodSelectTimeMax = $var;

        return $this;
    }

    /**
     * the maximum time it took to update a method to the table
     *
     * Generated from protobuf field <code>uint32 MethodAppendTimeMax = 7;</code>
     * @return int
     */
    public function getMethodAppendTimeMax()
    {
        return $this->MethodAppendTimeMax;
    }

    /**
     * the maximum time it took to update a method to the table
     *
     * Generated from protobuf field <code>uint32 MethodAppendTimeMax = 7;</code>
     * @param int $var
     * @return $this
     */
    public function setMethodAppendTimeMax($var)
    {
        GPBUtil::checkUint32($var);
        $this->MethodAppendTimeMax = $var;

        return $this;
    }

    /**
     * how many rights are configured
     *
     * Generated from protobuf field <code>uint32 RightsTotal = 8;</code>
     * @return int
     */
    public function getRightsTotal()
    {
        return $this->RightsTotal;
    }

    /**
     * how many rights are configured
     *
     * Generated from protobuf field <code>uint32 RightsTotal = 8;</code>
     * @param int $var
     * @return $this
     */
    public function setRightsTotal($var)
    {
        GPBUtil::checkUint32($var);
        $this->RightsTotal = $var;

        return $this;
    }

    /**
     * the maximum time it took to select a rights from the table
     *
     * Generated from protobuf field <code>uint32 RightsSelectTimeMax = 9;</code>
     * @return int
     */
    public function getRightsSelectTimeMax()
    {
        return $this->RightsSelectTimeMax;
    }

    /**
     * the maximum time it took to select a rights from the table
     *
     * Generated from protobuf field <code>uint32 RightsSelectTimeMax = 9;</code>
     * @param int $var
     * @return $this
     */
    public function setRightsSelectTimeMax($var)
    {
        GPBUtil::checkUint32($var);
        $this->RightsSelectTimeMax = $var;

        return $this;
    }

    /**
     * the maximum time it took to update a rights to the table
     *
     * Generated from protobuf field <code>uint32 RightsAppendTimeMax = 10;</code>
     * @return int
     */
    public function getRightsAppendTimeMax()
    {
        return $this->RightsAppendTimeMax;
    }

    /**
     * the maximum time it took to update a rights to the table
     *
     * Generated from protobuf field <code>uint32 RightsAppendTimeMax = 10;</code>
     * @param int $var
     * @return $this
     */
    public function setRightsAppendTimeMax($var)
    {
        GPBUtil::checkUint32($var);
        $this->RightsAppendTimeMax = $var;

        return $this;
    }

    /**
     * how many users are configured
     *
     * Generated from protobuf field <code>uint32 UsersTotal = 11;</code>
     * @return int
     */
    public function getUsersTotal()
    {
        return $this->UsersTotal;
    }

    /**
     * how many users are configured
     *
     * Generated from protobuf field <code>uint32 UsersTotal = 11;</code>
     * @param int $var
     * @return $this
     */
    public function setUsersTotal($var)
    {
        GPBUtil::checkUint32($var);
        $this->UsersTotal = $var;

        return $this;
    }

    /**
     * the maximum time it took to select a user from the table
     *
     * Generated from protobuf field <code>uint32 UsersSelectTimeMax = 12;</code>
     * @return int
     */
    public function getUsersSelectTimeMax()
    {
        return $this->UsersSelectTimeMax;
    }

    /**
     * the maximum time it took to select a user from the table
     *
     * Generated from protobuf field <code>uint32 UsersSelectTimeMax = 12;</code>
     * @param int $var
     * @return $this
     */
    public function setUsersSelectTimeMax($var)
    {
        GPBUtil::checkUint32($var);
        $this->UsersSelectTimeMax = $var;

        return $this;
    }

    /**
     * the maximum time it took to update a user to the table
     *
     * Generated from protobuf field <code>uint32 UsersAppendTimeMax = 13;</code>
     * @return int
     */
    public function getUsersAppendTimeMax()
    {
        return $this->UsersAppendTimeMax;
    }

    /**
     * the maximum time it took to update a user to the table
     *
     * Generated from protobuf field <code>uint32 UsersAppendTimeMax = 13;</code>
     * @param int $var
     * @return $this
     */
    public function setUsersAppendTimeMax($var)
    {
        GPBUtil::checkUint32($var);
        $this->UsersAppendTimeMax = $var;

        return $this;
    }

    /**
     * the maximum time it took to select a user's redemptions
     *
     * Generated from protobuf field <code>uint32 UserRedeemSelectTimeMax = 14;</code>
     * @return int
     */
    public function getUserRedeemSelectTimeMax()
    {
        return $this->UserRedeemSelectTimeMax;
    }

    /**
     * the maximum time it took to select a user's redemptions
     *
     * Generated from protobuf field <code>uint32 UserRedeemSelectTimeMax = 14;</code>
     * @param int $var
     * @return $this
     */
    public function setUserRedeemSelectTimeMax($var)
    {
        GPBUtil::checkUint32($var);
        $this->UserRedeemSelectTimeMax = $var;

        return $this;
    }

    /**
     * the maximum time it took to update a user's redemptions
     *
     * Generated from protobuf field <code>uint32 UserRedeemAppendTimeMax = 15;</code>
     * @return int
     */
    public function getUserRedeemAppendTimeMax()
    {
        return $this->UserRedeemAppendTimeMax;
    }

    /**
     * the maximum time it took to update a user's redemptions
     *
     * Generated from protobuf field <code>uint32 UserRedeemAppendTimeMax = 15;</code>
     * @param int $var
     * @return $this
     */
    public function setUserRedeemAppendTimeMax($var)
    {
        GPBUtil::checkUint32($var);
        $this->UserRedeemAppendTimeMax = $var;

        return $this;
    }

}

