read method
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.LIST) {
{
TList _list216 = iprot.readListBegin();
this.parts = <int>[];
for (int _i217 = 0; _i217 < _list216.length; ++_i217) {
int _elem218;
_elem218 = iprot.readI32();
this.parts?.add(_elem218);
}
iprot.readListEnd();
}
} else {
TProtocolUtil.skip(iprot, field.type);
}
break;
case INDICES:
if (field.type == TType.STRUCT) {
this.indices = new IndexSpec();
this.indices?.read(iprot);
} else {
TProtocolUtil.skip(iprot, field.type);
}
break;
case TRAVERSE_SPEC:
if (field.type == TType.STRUCT) {
this.traverse_spec = new TraverseSpec();
this.traverse_spec?.read(iprot);
} 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
if (!__isset_space_id) {
throw new TProtocolError(TProtocolErrorType.UNKNOWN,
"Required field 'space_id' was not found in serialized data! Struct: ${toString()}");
}
validate();
}