MineFrog.Player.BeginRead C# (CSharp) Method

BeginRead() private method

private BeginRead ( ) : void
return void
        internal void BeginRead()
        {
            try
            {
                while (!IsDisconnected)
                {
                    while (!_stream.DataAvailable)
                    {
                        if (IsDisconnected) return;
                        Thread.Sleep(100);
                    }

                    var incomingId = (byte) _stream.ReadByte();
                    var packetType = (PacketType) incomingId;

                    switch (packetType)
                    {
                        case PacketType.Identification:
                            //Server.Log("Identification packet Received", LogTypesEnum.debug);
                            ReceiveIdentificationPacket();
                            break;
                        case PacketType.SetBlockIncoming:
                            //Server.Log("SetBlockIncoming packet received!", LogTypesEnum.debug);
                            ReceiveSetBlockPacket();
                            break;
                        case PacketType.PositionAndOrientationTeleport:
                            //Server.Log("POSandORIENT packet received!", LogTypesEnum.debug);
                            ReceivePosAndOrientPacket();
                            break;
                        case PacketType.Message:
                            //Server.Log("Message packet received!", LogTypesEnum.debug);
                            ReceiveMessage();
                            break;
                        default:
                            SendKick("Invalid Packet ID " + incomingId);
                            Server.Log("received packet id: " + incomingId + ", not in switch", LogTypesEnum.Debug);
                            break;
                    }
                }
            }
            catch
            {
                if (!IsDisconnected) Disconnect();
                //Server.Log(e.Message, LogTypesEnum.error);
            }
        }