Apache.Hadoop.Thriftfs.Api.BlockLocation.Read C# (CSharp) Метод

Read() публичный Метод

public Read ( TProtocol iprot ) : void
iprot Thrift.Protocol.TProtocol
Результат void
        public void Read(TProtocol iprot)
        {
            TField field;
              iprot.ReadStructBegin();
              while (true)
              {
            field = iprot.ReadFieldBegin();
            if (field.Type == TType.Stop) {
              break;
            }
            switch (field.ID)
            {
              case 1:
            if (field.Type == TType.List) {
              {
                Hosts = new List<string>();
                TList _list0 = iprot.ReadListBegin();
                for( int _i1 = 0; _i1 < _list0.Count; ++_i1)
                {
                  string _elem2 = null;
                  _elem2 = iprot.ReadString();
                  Hosts.Add(_elem2);
                }
                iprot.ReadListEnd();
              }
            } else {
              TProtocolUtil.Skip(iprot, field.Type);
            }
            break;
              case 2:
            if (field.Type == TType.List) {
              {
                Names = new List<string>();
                TList _list3 = iprot.ReadListBegin();
                for( int _i4 = 0; _i4 < _list3.Count; ++_i4)
                {
                  string _elem5 = null;
                  _elem5 = iprot.ReadString();
                  Names.Add(_elem5);
                }
                iprot.ReadListEnd();
              }
            } else {
              TProtocolUtil.Skip(iprot, field.Type);
            }
            break;
              case 3:
            if (field.Type == TType.I64) {
              Offset = iprot.ReadI64();
            } else {
              TProtocolUtil.Skip(iprot, field.Type);
            }
            break;
              case 4:
            if (field.Type == TType.I64) {
              Length = iprot.ReadI64();
            } else {
              TProtocolUtil.Skip(iprot, field.Type);
            }
            break;
              default:
            TProtocolUtil.Skip(iprot, field.Type);
            break;
            }
            iprot.ReadFieldEnd();
              }
              iprot.ReadStructEnd();
        }

Usage Example

Пример #1
0
 public void Read(TProtocol iprot)
 {
     TField field;
     iprot.ReadStructBegin();
     while (true)
     {
       field = iprot.ReadFieldBegin();
       if (field.Type == TType.Stop) {
     break;
       }
       switch (field.ID)
       {
     case 0:
       if (field.Type == TType.List) {
     {
       Success = new List<BlockLocation>();
       TList _list12 = iprot.ReadListBegin();
       for( int _i13 = 0; _i13 < _list12.Count; ++_i13)
       {
         BlockLocation _elem14 = new BlockLocation();
         _elem14 = new BlockLocation();
         _elem14.Read(iprot);
         Success.Add(_elem14);
       }
       iprot.ReadListEnd();
     }
       } else {
     TProtocolUtil.Skip(iprot, field.Type);
       }
       break;
     case 1:
       if (field.Type == TType.Struct) {
     Ouch = new ThriftIOException();
     Ouch.Read(iprot);
       } else {
     TProtocolUtil.Skip(iprot, field.Type);
       }
       break;
     default:
       TProtocolUtil.Skip(iprot, field.Type);
       break;
       }
       iprot.ReadFieldEnd();
     }
     iprot.ReadStructEnd();
 }