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 PART_ID:
if (field.type == TType.I32) {
this.part_id = iprot.readI32();
this.__isset_part_id = true;
} else {
TProtocolUtil.skip(iprot, field.type);
}
break;
case AS_LEARNER:
if (field.type == TType.BOOL) {
this.as_learner = iprot.readBool();
this.__isset_as_learner = true;
} else {
TProtocolUtil.skip(iprot, field.type);
}
break;
case PEERS:
if (field.type == TType.LIST) {
{
TList _list290 = iprot.readListBegin();
this.peers = <t_nebula.HostAddr>[];
for (int _i291 = 0; _i291 < _list290.length; ++_i291) {
t_nebula.HostAddr _elem292;
_elem292 = new t_nebula.HostAddr();
_elem292.read(iprot);
this.peers?.add(_elem292);
}
iprot.readListEnd();
}
} 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();
}