示例#1
0
        public void Read(TProtocol iprot)
        {
            bool   isset_statsDesc = false;
            bool   isset_statsObj  = false;
            TField field;

            iprot.ReadStructBegin();
            while (true)
            {
                field = iprot.ReadFieldBegin();
                if (field.Type == TType.Stop)
                {
                    break;
                }
                switch (field.ID)
                {
                case 1:
                    if (field.Type == TType.Struct)
                    {
                        StatsDesc = new ColumnStatisticsDesc();
                        StatsDesc.Read(iprot);
                        isset_statsDesc = true;
                    }
                    else
                    {
                        TProtocolUtil.Skip(iprot, field.Type);
                    }
                    break;

                case 2:
                    if (field.Type == TType.List)
                    {
                        {
                            StatsObj = new List <ColumnStatisticsObj>();
                            TList _list118 = iprot.ReadListBegin();
                            for (int _i119 = 0; _i119 < _list118.Count; ++_i119)
                            {
                                ColumnStatisticsObj _elem120 = new ColumnStatisticsObj();
                                _elem120 = new ColumnStatisticsObj();
                                _elem120.Read(iprot);
                                StatsObj.Add(_elem120);
                            }
                            iprot.ReadListEnd();
                        }
                        isset_statsObj = true;
                    }
                    else
                    {
                        TProtocolUtil.Skip(iprot, field.Type);
                    }
                    break;

                default:
                    TProtocolUtil.Skip(iprot, field.Type);
                    break;
                }
                iprot.ReadFieldEnd();
            }
            iprot.ReadStructEnd();
            if (!isset_statsDesc)
            {
                throw new TProtocolException(TProtocolException.INVALID_DATA);
            }
            if (!isset_statsObj)
            {
                throw new TProtocolException(TProtocolException.INVALID_DATA);
            }
        }
示例#2
0
 public ColumnStatistics(ColumnStatisticsDesc statsDesc, List <ColumnStatisticsObj> statsObj)
     : this()
 {
     this.StatsDesc = statsDesc;
     this.StatsObj  = statsObj;
 }