sábado, 4 de outubro de 2014

YOU HAVE NO POWER HERE BUG!!!

   Caros colegas programáticos, a semanas que eu não apareço por aqui, mas havia um motivo... eu estava sendo vencido por um bug. 
   Tudo começou quando eu implementei a função de retirar ou de adicionar um ingrediente.
Tudo funcionava perfeitamente, exceto pelo fato de que: Se o usuário estivesse mexendo com dois ou mais sabores e estes possuíssem ingredientes em comum, ao fazer uma alteração no ingrediente de um sabor ele alterava o do outro também... O mais esquisito é que quando o usuário finalizava a pizza os ingredientes eram enviados corretamente.

resumo: enviava certo e exibia errado.

foram semanas estudando e revisando o código até que hoje eu percebi que talvez eu estivesse apontando pro "objeto mãe" do ingrediente e não para o ingrediente exclusivo do sabor em questão. 

solução: instanciar um novo objeto de ingrediente ao fazer a montagem dos sabores disponíveis no cardápio


for (String ingrediente : ingredientes) {
IngredienteModel aux = PimpController.ingredientes.get(ingrediente);
IngredienteModel aux2 = new IngredienteModel(aux.getNome(), aux.getPreco(), true);         iAux.add(aux2);
}

sendo aux = o ingrediente mãe.
          aux2 = o ingrediente exclusivo do sabor. 



Nenhum comentário:

Postar um comentário