Exemple #1
0
        public override void ReceberMensagem(Mensagem mensagem)
        {
            Teste.TesteDeRede.ExibirEtapa();
            if (mensagem.Tamanho > 5)
            {
                var mac = mensagem.ExtrairMacAdress();

                //Verifica se a mensagem é para este host.
                if (mac.Equals(macAddress))
                {
                    mensagem.Remover(6); //Remove os 48bits do cabeçalho, deixando o MAC de origem para depois.
                    Console.WriteLine($"Eu sou {Nome} depois de remover o cabeçalho tenho {mensagem.Tamanho} bytes: {mensagem}");
                    ((Rede)maisUm).ReceberMensagem(mensagem);
                }
                else
                {
                    Console.WriteLine($"Esta mensagem não é para este host. Origem: {mac}. Este host: {macAddress}.");
                }
            }
            else
            {
                Console.WriteLine("A mensagem não contém bytes suficientes.");
            }
        }