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) { StageId = iprot.ReadString(); } else { TProtocolUtil.Skip(iprot, field.Type); } break; case 2: if (field.Type == TType.I32) { StageType = (StageType)iprot.ReadI32(); } else { TProtocolUtil.Skip(iprot, field.Type); } break; case 3: if (field.Type == TType.Map) { { StageAttributes = new Dictionary<string, string>(); TMap _map36 = iprot.ReadMapBegin(); for( int _i37 = 0; _i37 < _map36.Count; ++_i37) { string _key38; string _val39; _key38 = iprot.ReadString(); _val39 = iprot.ReadString(); StageAttributes[_key38] = _val39; } iprot.ReadMapEnd(); } } else { TProtocolUtil.Skip(iprot, field.Type); } break; case 4: if (field.Type == TType.Map) { { StageCounters = new Dictionary<string, long>(); TMap _map40 = iprot.ReadMapBegin(); for( int _i41 = 0; _i41 < _map40.Count; ++_i41) { string _key42; long _val43; _key42 = iprot.ReadString(); _val43 = iprot.ReadI64(); StageCounters[_key42] = _val43; } iprot.ReadMapEnd(); } } else { TProtocolUtil.Skip(iprot, field.Type); } break; case 5: if (field.Type == TType.List) { { TaskList = new List<Task>(); TList _list44 = iprot.ReadListBegin(); for( int _i45 = 0; _i45 < _list44.Count; ++_i45) { Task _elem46 = new Task(); _elem46 = new Task(); _elem46.Read(iprot); TaskList.Add(_elem46); } iprot.ReadListEnd(); } } else { TProtocolUtil.Skip(iprot, field.Type); } break; case 6: if (field.Type == TType.Bool) { Done = iprot.ReadBool(); } else { TProtocolUtil.Skip(iprot, field.Type); } break; case 7: if (field.Type == TType.Bool) { Started = iprot.ReadBool(); } else { TProtocolUtil.Skip(iprot, field.Type); } break; default: TProtocolUtil.Skip(iprot, field.Type); break; } iprot.ReadFieldEnd(); } iprot.ReadStructEnd(); }