private void HandleReceived_Connection(MhfConnection connection, MhfPacket packet) { if (!_connectionHandlers.ContainsKey(packet.Id)) { // _logger.LogUnknownIncomingPacket(connection, packet); return; } IConnectionHandler connectionHandler = _connectionHandlers[packet.Id]; if (connectionHandler.ExpectedSize != NoExpectedSize && packet.Data.Size < connectionHandler.ExpectedSize) { _logger.Error(connection, $"Ignoring Packed (Id:{packet.Id}) is smaller ({packet.Data.Size}) than expected ({connectionHandler.ExpectedSize})"); return; } // _logger.LogIncomingPacket(connection, packet); packet.Data.SetPositionStart(); try { connectionHandler.Handle(connection, packet); } catch (Exception ex) { _logger.Exception(connection, ex); } }
public List <MhfPacket> Receive(byte[] data) { List <MhfPacket> packets; try { packets = PacketFactory.Read(data); } catch (Exception ex) { _logger.Exception(this, ex); packets = new List <MhfPacket>(); } return(packets); }
protected override void Exception(Exception ex) { Logger.Exception(ex); }