<?php
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: websitelog.proto

namespace Gateway\Data\Rawlog;

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

/**
 * Generated from protobuf message <code>gateway.data.rawlog.AppMeta</code>
 */
class AppMeta extends \Google\Protobuf\Internal\Message
{
    /**
     * App相关配置
     *
     * Generated from protobuf field <code>string app_id = 1;</code>
     */
    private $app_id = '';
    /**
     * 发布号是后台区分版本的唯一id，不同平台，不同版本都需要保证全局的唯一性
     *
     * Generated from protobuf field <code>string build_number = 2;</code>
     */
    private $build_number = '';
    /**
     * app_version
     *
     * Generated from protobuf field <code>string bundle_version = 3;</code>
     */
    private $bundle_version = '';
    /**
     * 分发渠道,是否修改为枚举?
     *
     * Generated from protobuf field <code>string distribution_channel = 4;</code>
     */
    private $distribution_channel = '';
    /**
     * md5后的imei号
     *
     * Generated from protobuf field <code>string imei = 6;</code>
     */
    private $imei = '';
    /**
     * MacID
     *
     * Generated from protobuf field <code>string mac_id = 7;</code>
     */
    private $mac_id = '';
    /**
     * 安卓系统用户id
     *
     * Generated from protobuf field <code>string android_id = 8;</code>
     */
    private $android_id = '';
    /**
     * 安卓系统用户谷歌广告id 201805 安卓4660版本新增
     *
     * Generated from protobuf field <code>string android_advertising_id = 9;</code>
     */
    private $android_advertising_id = '';
    /**
     * 设备相关的元数据
     *
     * Generated from protobuf field <code>string device_name = 11;</code>
     */
    private $device_name = '';
    /**
     * 机器的品牌
     *
     * Generated from protobuf field <code>string brand = 12;</code>
     */
    private $brand = '';
    /**
     *optional string screen_resolution = 13; // 屏幕分辨率
     *
     * Generated from protobuf field <code>string screen_density = 14;</code>
     */
    private $screen_density = '';
    /**
     * 处理器核数
     *
     * Generated from protobuf field <code>int32 processor_count = 15;</code>
     */
    private $processor_count = 0;
    /**
     * 机器内存, 单位MB
     *
     * Generated from protobuf field <code>string physical_memory = 16;</code>
     */
    private $physical_memory = '';
    /**
     * 屏幕的宽度像素点
     *
     * Generated from protobuf field <code>int32 screen_width = 17;</code>
     */
    private $screen_width = 0;
    /**
     * 屏幕的高度像素点
     *
     * Generated from protobuf field <code>int32 screent_height = 18;</code>
     */
    private $screent_height = 0;
    /**
     * 操作系统相关配置
     *
     * Generated from protobuf field <code>.gateway.data.rawlog.Platform platform = 21;</code>
     */
    private $platform = 0;
    /**
     * 操作系统名
     *
     * Generated from protobuf field <code>string operating_system = 22;</code>
     */
    private $operating_system = '';
    /**
     * 语言
     *
     * Generated from protobuf field <code>string language = 23;</code>
     */
    private $language = '';
    /**
     * 国家
     *
     * Generated from protobuf field <code>string country = 24;</code>
     */
    private $country = '';
    /**
     * 时区
     *
     * Generated from protobuf field <code>string tm_zone = 25;</code>
     */
    private $tm_zone = '';
    /**
     * iOS相关的信息
     *
     * Generated from protobuf field <code>bool ios_jailbreak = 51;</code>
     */
    private $ios_jailbreak = false;
    /**
     * 唯一区分设备号idfa
     *
     * Generated from protobuf field <code>string ios_advertising_identifier = 56;</code>
     */
    private $ios_advertising_identifier = '';
    /**
     * idfv
     *
     * Generated from protobuf field <code>string ios_identifier_for_vendor = 57;</code>
     */
    private $ios_identifier_for_vendor = '';

    /**
     * Constructor.
     *
     * @param array $data {
     *     Optional. Data for populating the Message object.
     *
     *     @type string $app_id
     *           App相关配置
     *     @type string $build_number
     *           发布号是后台区分版本的唯一id，不同平台，不同版本都需要保证全局的唯一性
     *     @type string $bundle_version
     *           app_version
     *     @type string $distribution_channel
     *           分发渠道,是否修改为枚举?
     *     @type string $imei
     *           md5后的imei号
     *     @type string $mac_id
     *           MacID
     *     @type string $android_id
     *           安卓系统用户id
     *     @type string $android_advertising_id
     *           安卓系统用户谷歌广告id 201805 安卓4660版本新增
     *     @type string $device_name
     *           设备相关的元数据
     *     @type string $brand
     *           机器的品牌
     *     @type string $screen_density
     *          optional string screen_resolution = 13; // 屏幕分辨率
     *     @type int $processor_count
     *           处理器核数
     *     @type string $physical_memory
     *           机器内存, 单位MB
     *     @type int $screen_width
     *           屏幕的宽度像素点
     *     @type int $screent_height
     *           屏幕的高度像素点
     *     @type int $platform
     *           操作系统相关配置
     *     @type string $operating_system
     *           操作系统名
     *     @type string $language
     *           语言
     *     @type string $country
     *           国家
     *     @type string $tm_zone
     *           时区
     *     @type bool $ios_jailbreak
     *           iOS相关的信息
     *     @type string $ios_advertising_identifier
     *           唯一区分设备号idfa
     *     @type string $ios_identifier_for_vendor
     *           idfv
     * }
     */
    public function __construct($data = NULL) {
        \GPBMetadata\Websitelog::initOnce();
        parent::__construct($data);
    }

    /**
     * App相关配置
     *
     * Generated from protobuf field <code>string app_id = 1;</code>
     * @return string
     */
    public function getAppId()
    {
        return $this->app_id;
    }

    /**
     * App相关配置
     *
     * Generated from protobuf field <code>string app_id = 1;</code>
     * @param string $var
     * @return $this
     */
    public function setAppId($var)
    {
        GPBUtil::checkString($var, True);
        $this->app_id = $var;

        return $this;
    }

    /**
     * 发布号是后台区分版本的唯一id，不同平台，不同版本都需要保证全局的唯一性
     *
     * Generated from protobuf field <code>string build_number = 2;</code>
     * @return string
     */
    public function getBuildNumber()
    {
        return $this->build_number;
    }

    /**
     * 发布号是后台区分版本的唯一id，不同平台，不同版本都需要保证全局的唯一性
     *
     * Generated from protobuf field <code>string build_number = 2;</code>
     * @param string $var
     * @return $this
     */
    public function setBuildNumber($var)
    {
        GPBUtil::checkString($var, True);
        $this->build_number = $var;

        return $this;
    }

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

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

        return $this;
    }

    /**
     * 分发渠道,是否修改为枚举?
     *
     * Generated from protobuf field <code>string distribution_channel = 4;</code>
     * @return string
     */
    public function getDistributionChannel()
    {
        return $this->distribution_channel;
    }

    /**
     * 分发渠道,是否修改为枚举?
     *
     * Generated from protobuf field <code>string distribution_channel = 4;</code>
     * @param string $var
     * @return $this
     */
    public function setDistributionChannel($var)
    {
        GPBUtil::checkString($var, True);
        $this->distribution_channel = $var;

        return $this;
    }

    /**
     * md5后的imei号
     *
     * Generated from protobuf field <code>string imei = 6;</code>
     * @return string
     */
    public function getImei()
    {
        return $this->imei;
    }

    /**
     * md5后的imei号
     *
     * Generated from protobuf field <code>string imei = 6;</code>
     * @param string $var
     * @return $this
     */
    public function setImei($var)
    {
        GPBUtil::checkString($var, True);
        $this->imei = $var;

        return $this;
    }

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

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

        return $this;
    }

    /**
     * 安卓系统用户id
     *
     * Generated from protobuf field <code>string android_id = 8;</code>
     * @return string
     */
    public function getAndroidId()
    {
        return $this->android_id;
    }

    /**
     * 安卓系统用户id
     *
     * Generated from protobuf field <code>string android_id = 8;</code>
     * @param string $var
     * @return $this
     */
    public function setAndroidId($var)
    {
        GPBUtil::checkString($var, True);
        $this->android_id = $var;

        return $this;
    }

    /**
     * 安卓系统用户谷歌广告id 201805 安卓4660版本新增
     *
     * Generated from protobuf field <code>string android_advertising_id = 9;</code>
     * @return string
     */
    public function getAndroidAdvertisingId()
    {
        return $this->android_advertising_id;
    }

    /**
     * 安卓系统用户谷歌广告id 201805 安卓4660版本新增
     *
     * Generated from protobuf field <code>string android_advertising_id = 9;</code>
     * @param string $var
     * @return $this
     */
    public function setAndroidAdvertisingId($var)
    {
        GPBUtil::checkString($var, True);
        $this->android_advertising_id = $var;

        return $this;
    }

    /**
     * 设备相关的元数据
     *
     * Generated from protobuf field <code>string device_name = 11;</code>
     * @return string
     */
    public function getDeviceName()
    {
        return $this->device_name;
    }

    /**
     * 设备相关的元数据
     *
     * Generated from protobuf field <code>string device_name = 11;</code>
     * @param string $var
     * @return $this
     */
    public function setDeviceName($var)
    {
        GPBUtil::checkString($var, True);
        $this->device_name = $var;

        return $this;
    }

    /**
     * 机器的品牌
     *
     * Generated from protobuf field <code>string brand = 12;</code>
     * @return string
     */
    public function getBrand()
    {
        return $this->brand;
    }

    /**
     * 机器的品牌
     *
     * Generated from protobuf field <code>string brand = 12;</code>
     * @param string $var
     * @return $this
     */
    public function setBrand($var)
    {
        GPBUtil::checkString($var, True);
        $this->brand = $var;

        return $this;
    }

    /**
     *optional string screen_resolution = 13; // 屏幕分辨率
     *
     * Generated from protobuf field <code>string screen_density = 14;</code>
     * @return string
     */
    public function getScreenDensity()
    {
        return $this->screen_density;
    }

    /**
     *optional string screen_resolution = 13; // 屏幕分辨率
     *
     * Generated from protobuf field <code>string screen_density = 14;</code>
     * @param string $var
     * @return $this
     */
    public function setScreenDensity($var)
    {
        GPBUtil::checkString($var, True);
        $this->screen_density = $var;

        return $this;
    }

    /**
     * 处理器核数
     *
     * Generated from protobuf field <code>int32 processor_count = 15;</code>
     * @return int
     */
    public function getProcessorCount()
    {
        return $this->processor_count;
    }

    /**
     * 处理器核数
     *
     * Generated from protobuf field <code>int32 processor_count = 15;</code>
     * @param int $var
     * @return $this
     */
    public function setProcessorCount($var)
    {
        GPBUtil::checkInt32($var);
        $this->processor_count = $var;

        return $this;
    }

    /**
     * 机器内存, 单位MB
     *
     * Generated from protobuf field <code>string physical_memory = 16;</code>
     * @return string
     */
    public function getPhysicalMemory()
    {
        return $this->physical_memory;
    }

    /**
     * 机器内存, 单位MB
     *
     * Generated from protobuf field <code>string physical_memory = 16;</code>
     * @param string $var
     * @return $this
     */
    public function setPhysicalMemory($var)
    {
        GPBUtil::checkString($var, True);
        $this->physical_memory = $var;

        return $this;
    }

    /**
     * 屏幕的宽度像素点
     *
     * Generated from protobuf field <code>int32 screen_width = 17;</code>
     * @return int
     */
    public function getScreenWidth()
    {
        return $this->screen_width;
    }

    /**
     * 屏幕的宽度像素点
     *
     * Generated from protobuf field <code>int32 screen_width = 17;</code>
     * @param int $var
     * @return $this
     */
    public function setScreenWidth($var)
    {
        GPBUtil::checkInt32($var);
        $this->screen_width = $var;

        return $this;
    }

    /**
     * 屏幕的高度像素点
     *
     * Generated from protobuf field <code>int32 screent_height = 18;</code>
     * @return int
     */
    public function getScreentHeight()
    {
        return $this->screent_height;
    }

    /**
     * 屏幕的高度像素点
     *
     * Generated from protobuf field <code>int32 screent_height = 18;</code>
     * @param int $var
     * @return $this
     */
    public function setScreentHeight($var)
    {
        GPBUtil::checkInt32($var);
        $this->screent_height = $var;

        return $this;
    }

    /**
     * 操作系统相关配置
     *
     * Generated from protobuf field <code>.gateway.data.rawlog.Platform platform = 21;</code>
     * @return int
     */
    public function getPlatform()
    {
        return $this->platform;
    }

    /**
     * 操作系统相关配置
     *
     * Generated from protobuf field <code>.gateway.data.rawlog.Platform platform = 21;</code>
     * @param int $var
     * @return $this
     */
    public function setPlatform($var)
    {
        GPBUtil::checkEnum($var, \Gateway\Data\Rawlog\Platform::class);
        $this->platform = $var;

        return $this;
    }

    /**
     * 操作系统名
     *
     * Generated from protobuf field <code>string operating_system = 22;</code>
     * @return string
     */
    public function getOperatingSystem()
    {
        return $this->operating_system;
    }

    /**
     * 操作系统名
     *
     * Generated from protobuf field <code>string operating_system = 22;</code>
     * @param string $var
     * @return $this
     */
    public function setOperatingSystem($var)
    {
        GPBUtil::checkString($var, True);
        $this->operating_system = $var;

        return $this;
    }

    /**
     * 语言
     *
     * Generated from protobuf field <code>string language = 23;</code>
     * @return string
     */
    public function getLanguage()
    {
        return $this->language;
    }

    /**
     * 语言
     *
     * Generated from protobuf field <code>string language = 23;</code>
     * @param string $var
     * @return $this
     */
    public function setLanguage($var)
    {
        GPBUtil::checkString($var, True);
        $this->language = $var;

        return $this;
    }

    /**
     * 国家
     *
     * Generated from protobuf field <code>string country = 24;</code>
     * @return string
     */
    public function getCountry()
    {
        return $this->country;
    }

    /**
     * 国家
     *
     * Generated from protobuf field <code>string country = 24;</code>
     * @param string $var
     * @return $this
     */
    public function setCountry($var)
    {
        GPBUtil::checkString($var, True);
        $this->country = $var;

        return $this;
    }

    /**
     * 时区
     *
     * Generated from protobuf field <code>string tm_zone = 25;</code>
     * @return string
     */
    public function getTmZone()
    {
        return $this->tm_zone;
    }

    /**
     * 时区
     *
     * Generated from protobuf field <code>string tm_zone = 25;</code>
     * @param string $var
     * @return $this
     */
    public function setTmZone($var)
    {
        GPBUtil::checkString($var, True);
        $this->tm_zone = $var;

        return $this;
    }

    /**
     * iOS相关的信息
     *
     * Generated from protobuf field <code>bool ios_jailbreak = 51;</code>
     * @return bool
     */
    public function getIosJailbreak()
    {
        return $this->ios_jailbreak;
    }

    /**
     * iOS相关的信息
     *
     * Generated from protobuf field <code>bool ios_jailbreak = 51;</code>
     * @param bool $var
     * @return $this
     */
    public function setIosJailbreak($var)
    {
        GPBUtil::checkBool($var);
        $this->ios_jailbreak = $var;

        return $this;
    }

    /**
     * 唯一区分设备号idfa
     *
     * Generated from protobuf field <code>string ios_advertising_identifier = 56;</code>
     * @return string
     */
    public function getIosAdvertisingIdentifier()
    {
        return $this->ios_advertising_identifier;
    }

    /**
     * 唯一区分设备号idfa
     *
     * Generated from protobuf field <code>string ios_advertising_identifier = 56;</code>
     * @param string $var
     * @return $this
     */
    public function setIosAdvertisingIdentifier($var)
    {
        GPBUtil::checkString($var, True);
        $this->ios_advertising_identifier = $var;

        return $this;
    }

    /**
     * idfv
     *
     * Generated from protobuf field <code>string ios_identifier_for_vendor = 57;</code>
     * @return string
     */
    public function getIosIdentifierForVendor()
    {
        return $this->ios_identifier_for_vendor;
    }

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

        return $this;
    }

}

