

import java.util.ArrayList;
import java.util.Arrays;

public class Pedido {
    
	private static Pedido pedido1 = null;
	private static Pedido pedido2 = null;
	private static Pedido pedido3 = null;
	private static Pedido pedido4 = null;
    private static Pedido pedido = null;
    
    public Pedido() {
        ContadorTotal = 0;
        carrito = new ArrayList<Comida>();
    }
    
    //singleton design pattern
   
    public static Pedido getInstance(int numcliente) {
		switch (numcliente) {
		case 1:
			if(pedido1 == null) 
					pedido1 = new Pedido();
				return pedido1;
		case 2:
			if(pedido2 == null) 
					pedido2 = new Pedido();
				return pedido2;
		case 3:
			if(pedido3 == null) 
					pedido3 = new Pedido();
				return pedido3;
		case 4:
			if(pedido4 == null) 
					pedido4 = new Pedido();
				return pedido4;
		default: return null;
		}
	}


    public int getTotal() {
        return ContadorTotal;
    }
    
    public ArrayList<Comida> getCarrito(){
        return carrito;
    }
    
    public void addToCarrito (Comida plato) {
    	boolean test = carrito.contains(plato);
    	if(test==true) {
    		plato.setCantidad(plato.getCantidad()+1);
    	}
    	else {
			plato.setCantidad(1);
			carrito.add(plato);
    	}
    }
    
    public void addTotal(int precio) {
        ContadorTotal+=precio;
    }
    
    public void cleanCarrito () {
        carrito.clear();
        ContadorTotal = 0;
    }
    
    public void updateTotal(int precio) {
    	ContadorTotal-=precio;
    }
    
    private ArrayList<Comida> carrito;
    private int ContadorTotal;

}