read method

void read(
  1. TProtocol iprot
)
override

Reads the TObject from the given input protocol.

Implementation

read(TProtocol iprot) {
  TField field;
  iprot.readStructBegin();
  while (true) {
    field = iprot.readFieldBegin();
    if (field.type == TType.STOP) {
      break;
    }
    switch (field.id) {
      case SPACE_ID:
        if (field.type == TType.I32) {
          this.space_id = iprot.readI32();
          this.__isset_space_id = true;
        } else {
          TProtocolUtil.skip(iprot, field.type);
        }
        break;
      case PARTS:
        if (field.type == TType.MAP) {
          {
            TMap _map56 = iprot.readMapBegin();
            this.parts = new Map<int, List<t_nebula.Value>>();
            for (int _i57 = 0; _i57 < _map56.length; ++_i57) {
              int _key58;
              List<t_nebula.Value> _val59;
              _key58 = iprot.readI32();
              {
                TList _list60 = iprot.readListBegin();
                _val59 = <t_nebula.Value>[];
                for (int _i61 = 0; _i61 < _list60.length; ++_i61) {
                  t_nebula.Value _elem62;
                  _elem62 = new t_nebula.Value();
                  _elem62.read(iprot);
                  _val59.add(_elem62);
                }
                iprot.readListEnd();
              }
              this.parts?[_key58] = _val59;
            }
            iprot.readMapEnd();
          }
        } else {
          TProtocolUtil.skip(iprot, field.type);
        }
        break;
      case EDGE_TYPES:
        if (field.type == TType.LIST) {
          {
            TList _list63 = iprot.readListBegin();
            this.edge_types = <int>[];
            for (int _i64 = 0; _i64 < _list63.length; ++_i64) {
              int _elem65;
              _elem65 = iprot.readI32();
              this.edge_types?.add(_elem65);
            }
            iprot.readListEnd();
          }
        } else {
          TProtocolUtil.skip(iprot, field.type);
        }
        break;
      case COMMON:
        if (field.type == TType.STRUCT) {
          this.common = new RequestCommon();
          this.common?.read(iprot);
        } else {
          TProtocolUtil.skip(iprot, field.type);
        }
        break;
      default:
        TProtocolUtil.skip(iprot, field.type);
        break;
    }
    iprot.readFieldEnd();
  }
  iprot.readStructEnd();

  // check for required fields of primitive type, which can't be checked in the validate method
  validate();
}