public override bool Equals(object obj) { ViewFriendsRequest viewFriendsRequest = obj as ViewFriendsRequest; if (viewFriendsRequest == null) { return(false); } if (this.HasAgentId != viewFriendsRequest.HasAgentId || this.HasAgentId && !this.AgentId.Equals(viewFriendsRequest.AgentId)) { return(false); } if (!this.TargetId.Equals(viewFriendsRequest.TargetId)) { return(false); } if (this.Role.Count != viewFriendsRequest.Role.Count) { return(false); } for (int i = 0; i < this.Role.Count; i++) { if (!this.Role[i].Equals(viewFriendsRequest.Role[i])) { return(false); } } return(true); }
public static void Serialize(Stream stream, ViewFriendsRequest instance) { if (instance.HasAgentId) { stream.WriteByte(10); ProtocolParser.WriteUInt32(stream, instance.AgentId.GetSerializedSize()); EntityId.Serialize(stream, instance.AgentId); } if (instance.TargetId == null) { throw new ArgumentNullException("TargetId", "Required by proto specification."); } stream.WriteByte(18); ProtocolParser.WriteUInt32(stream, instance.TargetId.GetSerializedSize()); EntityId.Serialize(stream, instance.TargetId); if (instance.Role.Count > 0) { stream.WriteByte(26); uint num = 0; foreach (uint role in instance.Role) { num += ProtocolParser.SizeOfUInt32(role); } ProtocolParser.WriteUInt32(stream, num); foreach (uint role1 in instance.Role) { ProtocolParser.WriteUInt32(stream, role1); } } }
public static ViewFriendsRequest DeserializeLengthDelimited(Stream stream, ViewFriendsRequest instance) { long position = (long)ProtocolParser.ReadUInt32(stream); position += stream.Position; return(ViewFriendsRequest.Deserialize(stream, instance, position)); }
public static ViewFriendsRequest DeserializeLengthDelimited(Stream stream) { ViewFriendsRequest viewFriendsRequest = new ViewFriendsRequest(); ViewFriendsRequest.DeserializeLengthDelimited(stream, viewFriendsRequest); return(viewFriendsRequest); }
public static ViewFriendsRequest DeserializeLengthDelimited(Stream stream, ViewFriendsRequest instance) { long num = (long)((ulong)ProtocolParser.ReadUInt32(stream)); num += stream.get_Position(); return(ViewFriendsRequest.Deserialize(stream, instance, num)); }
public static void Serialize(Stream stream, ViewFriendsRequest instance) { if (instance.HasAgentId) { stream.WriteByte(10); ProtocolParser.WriteUInt32(stream, instance.AgentId.GetSerializedSize()); EntityId.Serialize(stream, instance.AgentId); } if (instance.TargetId == null) { throw new ArgumentNullException("TargetId", "Required by proto specification."); } stream.WriteByte(18); ProtocolParser.WriteUInt32(stream, instance.TargetId.GetSerializedSize()); EntityId.Serialize(stream, instance.TargetId); if (instance.Role.get_Count() > 0) { stream.WriteByte(26); uint num = 0u; using (List <uint> .Enumerator enumerator = instance.Role.GetEnumerator()) { while (enumerator.MoveNext()) { uint current = enumerator.get_Current(); num += ProtocolParser.SizeOfUInt32(current); } } ProtocolParser.WriteUInt32(stream, num); using (List <uint> .Enumerator enumerator2 = instance.Role.GetEnumerator()) { while (enumerator2.MoveNext()) { uint current2 = enumerator2.get_Current(); ProtocolParser.WriteUInt32(stream, current2); } } } }
public static ViewFriendsRequest Deserialize(Stream stream, ViewFriendsRequest instance, long limit) { if (instance.Role == null) { instance.Role = new List <uint>(); } while (true) { if (limit < (long)0 || stream.Position < limit) { int num = stream.ReadByte(); if (num == -1) { if (limit >= (long)0) { throw new EndOfStreamException(); } break; } else if (num == 10) { if (instance.AgentId != null) { EntityId.DeserializeLengthDelimited(stream, instance.AgentId); } else { instance.AgentId = EntityId.DeserializeLengthDelimited(stream); } } else if (num != 18) { if (num == 26) { long position = (long)ProtocolParser.ReadUInt32(stream); position += stream.Position; while (stream.Position < position) { instance.Role.Add(ProtocolParser.ReadUInt32(stream)); } if (stream.Position != position) { throw new ProtocolBufferException("Read too many bytes in packed data"); } } else { Key key = ProtocolParser.ReadKey((byte)num, stream); if (key.Field == 0) { throw new ProtocolBufferException("Invalid field id: 0, something went wrong in the stream"); } ProtocolParser.SkipKey(stream, key); } } else if (instance.TargetId != null) { EntityId.DeserializeLengthDelimited(stream, instance.TargetId); } else { instance.TargetId = EntityId.DeserializeLengthDelimited(stream); } } else { if (stream.Position != limit) { throw new ProtocolBufferException("Read past max limit"); } break; } } return(instance); }
public static ViewFriendsRequest Deserialize(Stream stream, ViewFriendsRequest instance) { return(ViewFriendsRequest.Deserialize(stream, instance, (long)-1)); }
public void Deserialize(Stream stream) { ViewFriendsRequest.Deserialize(stream, this); }
public static ViewFriendsRequest Deserialize(Stream stream, ViewFriendsRequest instance, long limit) { if (instance.Role == null) { instance.Role = 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 != 10) { if (num2 != 18) { if (num2 != 26) { 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 { long num3 = (long)((ulong)ProtocolParser.ReadUInt32(stream)); num3 += stream.get_Position(); while (stream.get_Position() < num3) { instance.Role.Add(ProtocolParser.ReadUInt32(stream)); } if (stream.get_Position() != num3) { throw new ProtocolBufferException("Read too many bytes in packed data"); } } } else if (instance.TargetId == null) { instance.TargetId = EntityId.DeserializeLengthDelimited(stream); } else { EntityId.DeserializeLengthDelimited(stream, instance.TargetId); } } else if (instance.AgentId == null) { instance.AgentId = EntityId.DeserializeLengthDelimited(stream); } else { EntityId.DeserializeLengthDelimited(stream, instance.AgentId); } } } if (stream.get_Position() == limit) { return(instance); } throw new ProtocolBufferException("Read past max limit"); }