private bool HandleData(byte[] data) { int packetLen = 0; ReceivePacket.SetBytes(data); if (ExitHandleData(ref packetLen)) { return(true); } while (packetLen > 0 && packetLen <= ReceivePacket.UnreadLength()) { byte[] bytes = ReceivePacket.ReadBytes(packetLen); ThreadManager.ExecuteOnMainThread(() => { Packet packet = new Packet(bytes); int packetID = packet.ReadInt(); PacketHandlerDictionary[packetID](packet); }); packetLen = 0; if (ExitHandleData(ref packetLen)) { return(true); } } if (packetLen < 2) { return(true); } return(false); }
private void HandleData(byte[] data) { Packet packetInit = new Packet(data); int packetLen = packetInit.ReadInt(); data = packetInit.ReadBytes(packetLen); ThreadManager.ExecuteOnMainThread(() => { Packet packet = new Packet(data); int packetID = packet.ReadInt(); PacketHandlerDictionary[packetID](packet); }); }
private bool HandleData(byte[] data) { byte packetLen = 0; ReceivePacket.SetBytes(data); if (ExitHandleData(ref packetLen)) { return(true); } while (packetLen > 0 && packetLen <= ReceivePacket.UnreadLength()) { byte[] bytes = ReceivePacket.ReadBytes(packetLen); ThreadManager.ExecuteOnMainThread(() => { byte packetID = byte.MaxValue; try { using (Packet packet = new Packet(bytes)) { packetID = packet.ReadByte(); PacketHandlerDictionary[packetID](packet); } } catch (KeyNotFoundException exception) { Output.WriteLine($"Error in Handle data of TCP Packet {packetID} ...\n{exception}"); } catch (Exception exception) { Output.WriteLine($"Error in Handle data of not know TCP Packet...\n{exception}"); } }); packetLen = 0; if (ExitHandleData(ref packetLen)) { return(true); } } if (packetLen < 2) { return(true); } return(false); }
private void HandleData(byte[] data) { using (Packet packetInit = new Packet(data)) { byte packetLen = packetInit.ReadPacketLen(); data = packetInit.ReadBytes(packetLen); } ThreadManager.ExecuteOnMainThread(() => { using (Packet packet = new Packet(data)) { byte packetID = packet.ReadByte(); PacketHandlerDictionary[packetID](packet); } }); }
protected override void InitPacketHandlerDictionary() { PacketHandlerDictionary.Add((byte)InternetDiscoveryServerPackets.welcome, ServerMenu.ReadWelcomePacket); PacketHandlerDictionary.Add((byte)InternetDiscoveryServerPackets.serverData, ServerMenu.ReadServerDataPacket); PacketHandlerDictionary.Add((byte)InternetDiscoveryServerPackets.serverDeleted, ServerMenu.ReadServerDeletedPacket); PacketHandlerDictionary.Add((byte)InternetDiscoveryServerPackets.serverModified, ServerMenu.ReadServerModifiedPacket); PacketHandlerDictionary.Add((byte)InternetDiscoveryServerPackets.cantJoinServerDeleted, ServerMenu.ReadCantJoinServerDeleted); PacketHandlerDictionary.Add((byte)InternetDiscoveryServerPackets.noMoreServersAvailable, ServerMenu.ReadNoMoreServersAvailable); PacketHandlerDictionary.Add((byte)InternetDiscoveryServerPackets.joinServer, ServerMenu.ReadJoinServer); }
private bool HandleData(byte[] data) { byte packetLen = 0; ReceivePacket.SetBytes(data); if (ExitHandleData(ref packetLen)) { return(true); } while (packetLen > 0 && packetLen <= ReceivePacket.UnreadLength()) { byte[] bytes = ReceivePacket.ReadBytes(packetLen); ThreadManager.ExecuteOnMainThread(() => { using (Packet packet = new Packet(bytes)) { byte packetId = packet.ReadByte(); string serverName = packet.ReadString(); PacketHandlerDictionary[packetId](serverName, packet); } }); packetLen = 0; if (ExitHandleData(ref packetLen)) { return(true); } } if (packetLen < 2) { return(true); } return(false); }
protected override void InitPacketHandlerDictionary() { PacketHandlerDictionary.Add((int)LANDiscoveryServerPackets.serverData, ServerMenu.ReadServerDataPacket); }