public static LogonResult DeserializeLengthDelimited(Stream stream, LogonResult instance) { long num = (long)((ulong)ProtocolParser.ReadUInt32(stream)); num += stream.get_Position(); return(LogonResult.Deserialize(stream, instance, num)); }
public static LogonResult DeserializeLengthDelimited(Stream stream) { LogonResult logonResult = new LogonResult(); LogonResult.DeserializeLengthDelimited(stream, logonResult); return(logonResult); }
public static LogonResult DeserializeLengthDelimited(Stream stream, LogonResult instance) { long position = (long)ProtocolParser.ReadUInt32(stream); position += stream.Position; return(LogonResult.Deserialize(stream, instance, position)); }
public static void Serialize(Stream stream, LogonResult instance) { stream.WriteByte(8); ProtocolParser.WriteUInt32(stream, instance.ErrorCode); if (instance.HasAccount) { stream.WriteByte(18); ProtocolParser.WriteUInt32(stream, instance.Account.GetSerializedSize()); EntityId.Serialize(stream, instance.Account); } if (instance.GameAccount.get_Count() > 0) { using (List <EntityId> .Enumerator enumerator = instance.GameAccount.GetEnumerator()) { while (enumerator.MoveNext()) { EntityId current = enumerator.get_Current(); stream.WriteByte(26); ProtocolParser.WriteUInt32(stream, current.GetSerializedSize()); EntityId.Serialize(stream, current); } } } if (instance.HasEmail) { stream.WriteByte(34); ProtocolParser.WriteBytes(stream, Encoding.get_UTF8().GetBytes(instance.Email)); } if (instance.AvailableRegion.get_Count() > 0) { using (List <uint> .Enumerator enumerator2 = instance.AvailableRegion.GetEnumerator()) { while (enumerator2.MoveNext()) { uint current2 = enumerator2.get_Current(); stream.WriteByte(40); ProtocolParser.WriteUInt32(stream, current2); } } } if (instance.HasConnectedRegion) { stream.WriteByte(48); ProtocolParser.WriteUInt32(stream, instance.ConnectedRegion); } if (instance.HasBattleTag) { stream.WriteByte(58); ProtocolParser.WriteBytes(stream, Encoding.get_UTF8().GetBytes(instance.BattleTag)); } if (instance.HasGeoipCountry) { stream.WriteByte(66); ProtocolParser.WriteBytes(stream, Encoding.get_UTF8().GetBytes(instance.GeoipCountry)); } }
public override bool Equals(object obj) { LogonResult logonResult = obj as LogonResult; if (logonResult == null) { return(false); } if (!this.ErrorCode.Equals(logonResult.ErrorCode)) { return(false); } if (this.HasAccount != logonResult.HasAccount || this.HasAccount && !this.Account.Equals(logonResult.Account)) { return(false); } if (this.GameAccount.Count != logonResult.GameAccount.Count) { return(false); } for (int i = 0; i < this.GameAccount.Count; i++) { if (!this.GameAccount[i].Equals(logonResult.GameAccount[i])) { return(false); } } if (this.HasEmail != logonResult.HasEmail || this.HasEmail && !this.Email.Equals(logonResult.Email)) { return(false); } if (this.AvailableRegion.Count != logonResult.AvailableRegion.Count) { return(false); } for (int j = 0; j < this.AvailableRegion.Count; j++) { if (!this.AvailableRegion[j].Equals(logonResult.AvailableRegion[j])) { return(false); } } if (this.HasConnectedRegion != logonResult.HasConnectedRegion || this.HasConnectedRegion && !this.ConnectedRegion.Equals(logonResult.ConnectedRegion)) { return(false); } if (this.HasBattleTag != logonResult.HasBattleTag || this.HasBattleTag && !this.BattleTag.Equals(logonResult.BattleTag)) { return(false); } if (this.HasGeoipCountry == logonResult.HasGeoipCountry && (!this.HasGeoipCountry || this.GeoipCountry.Equals(logonResult.GeoipCountry))) { return(true); } return(false); }
public static void Serialize(Stream stream, LogonResult instance) { stream.WriteByte(8); ProtocolParser.WriteUInt32(stream, instance.ErrorCode); if (instance.HasAccount) { stream.WriteByte(18); ProtocolParser.WriteUInt32(stream, instance.Account.GetSerializedSize()); EntityId.Serialize(stream, instance.Account); } if (instance.GameAccount.Count > 0) { foreach (EntityId entityId in instance.GameAccount) { stream.WriteByte(26); ProtocolParser.WriteUInt32(stream, entityId.GetSerializedSize()); EntityId.Serialize(stream, entityId); } } if (instance.HasEmail) { stream.WriteByte(34); ProtocolParser.WriteBytes(stream, Encoding.UTF8.GetBytes(instance.Email)); } if (instance.AvailableRegion.Count > 0) { foreach (uint val in instance.AvailableRegion) { stream.WriteByte(40); ProtocolParser.WriteUInt32(stream, val); } } if (instance.HasConnectedRegion) { stream.WriteByte(48); ProtocolParser.WriteUInt32(stream, instance.ConnectedRegion); } if (instance.HasBattleTag) { stream.WriteByte(58); ProtocolParser.WriteBytes(stream, Encoding.UTF8.GetBytes(instance.BattleTag)); } if (instance.HasGeoipCountry) { stream.WriteByte(66); ProtocolParser.WriteBytes(stream, Encoding.UTF8.GetBytes(instance.GeoipCountry)); } }
public void Serialize(Stream stream) { LogonResult.Serialize(stream, this); }
public static LogonResult Deserialize(Stream stream, LogonResult instance, long limit) { if (instance.GameAccount == null) { instance.GameAccount = new List <EntityId>(); } if (instance.AvailableRegion == null) { instance.AvailableRegion = new List <uint>(); } while (limit < 0L || stream.get_Position() < limit) { int num = stream.ReadByte(); if (num == -1) { if (limit >= 0L) { throw new EndOfStreamException(); } return(instance); } else { int num2 = num; if (num2 != 8) { if (num2 != 18) { if (num2 != 26) { if (num2 != 34) { if (num2 != 40) { if (num2 != 48) { if (num2 != 58) { if (num2 != 66) { if (num2 != 74) { Key key = ProtocolParser.ReadKey((byte)num, stream); uint field = key.Field; if (field == 0u) { throw new ProtocolBufferException("Invalid field id: 0, something went wrong in the stream"); } ProtocolParser.SkipKey(stream, key); } else { instance.SessionKey = ProtocolParser.ReadBytes(stream); } } else { instance.GeoipCountry = ProtocolParser.ReadString(stream); } } else { instance.BattleTag = ProtocolParser.ReadString(stream); } } else { instance.ConnectedRegion = ProtocolParser.ReadUInt32(stream); } } else { instance.AvailableRegion.Add(ProtocolParser.ReadUInt32(stream)); } } else { instance.Email = ProtocolParser.ReadString(stream); } } else { instance.GameAccount.Add(EntityId.DeserializeLengthDelimited(stream)); } } else if (instance.Account == null) { instance.Account = EntityId.DeserializeLengthDelimited(stream); } else { EntityId.DeserializeLengthDelimited(stream, instance.Account); } } else { instance.ErrorCode = ProtocolParser.ReadUInt32(stream); } } } if (stream.get_Position() == limit) { return(instance); } throw new ProtocolBufferException("Read past max limit"); }
public static LogonResult Deserialize(Stream stream, LogonResult instance) { return(LogonResult.Deserialize(stream, instance, -1L)); }