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.String) {
Start_token = iprot.ReadString();
} else {
TProtocolUtil.Skip(iprot, field.Type);
}
break;
case 2:
if (field.Type == TType.String) {
End_token = iprot.ReadString();
} else {
TProtocolUtil.Skip(iprot, field.Type);
}
break;
case 3:
if (field.Type == TType.List) {
{
Endpoints = new List<string>();
TList _list20 = iprot.ReadListBegin();
for( int _i21 = 0; _i21 < _list20.Count; ++_i21)
{
string _elem22 = null;
_elem22 = iprot.ReadString();
Endpoints.Add(_elem22);
}
iprot.ReadListEnd();
}
} else {
TProtocolUtil.Skip(iprot, field.Type);
}
break;
case 4:
if (field.Type == TType.List) {
{
Rpc_endpoints = new List<string>();
TList _list23 = iprot.ReadListBegin();
for( int _i24 = 0; _i24 < _list23.Count; ++_i24)
{
string _elem25 = null;
_elem25 = iprot.ReadString();
Rpc_endpoints.Add(_elem25);
}
iprot.ReadListEnd();
}
} else {
TProtocolUtil.Skip(iprot, field.Type);
}
break;
case 5:
if (field.Type == TType.List) {
{
Endpoint_details = new List<EndpointDetails>();
TList _list26 = iprot.ReadListBegin();
for( int _i27 = 0; _i27 < _list26.Count; ++_i27)
{
EndpointDetails _elem28 = new EndpointDetails();
_elem28 = new EndpointDetails();
_elem28.Read(iprot);
Endpoint_details.Add(_elem28);
}
iprot.ReadListEnd();
}
} else {
TProtocolUtil.Skip(iprot, field.Type);
}
break;
default:
TProtocolUtil.Skip(iprot, field.Type);
break;
}
iprot.ReadFieldEnd();
}
iprot.ReadStructEnd();
}