71 lines
No EOL
1.8 KiB
Java
71 lines
No EOL
1.8 KiB
Java
package services;
|
|
|
|
import java.util.ArrayList;
|
|
import java.util.Arrays;
|
|
import java.util.List;
|
|
|
|
import model.Pizza;
|
|
import model.PizzaSize;
|
|
import model.Topping;
|
|
import services.io.PizzaIOHandler;
|
|
|
|
public class PizzaService {
|
|
private List<Pizza> pizzas = new ArrayList<Pizza>();
|
|
|
|
public PizzaService() {
|
|
this.pizzas = getAll(null);
|
|
}
|
|
|
|
public void create(Pizza pizza) {
|
|
pizzas.add(pizza);
|
|
}
|
|
|
|
public void update(String name, PizzaSize pizzaSize, ArrayList<Topping> toppings) {
|
|
Pizza pizza = new Pizza("", PizzaSize.SMALL, new ArrayList<Topping>());
|
|
for (Pizza p : pizzas)
|
|
if (p.getName() == name)
|
|
pizza = p;
|
|
pizza.setSize(pizzaSize);
|
|
pizza.setToppings(toppings);
|
|
}
|
|
|
|
public void delete(String name) {
|
|
Pizza pizza = new Pizza("", PizzaSize.SMALL, new ArrayList<Topping>());
|
|
for (Pizza p : pizzas)
|
|
if (p.getName() == name)
|
|
pizza = p;
|
|
pizzas.remove(pizza);
|
|
}
|
|
|
|
public Pizza read(String name) {
|
|
for (Pizza pizza : pizzas) {
|
|
if (pizza.getName() == name)
|
|
return pizza;
|
|
}
|
|
return null;
|
|
}
|
|
|
|
public Object[][] getTableData() {
|
|
Object[][] data = new Object[pizzas.size()][];
|
|
int id = 0;
|
|
for (Pizza pizza : pizzas) {
|
|
data[id] = new Object[] { pizza.getName(), pizza.getPrice(), pizza.getSize(),
|
|
Arrays.toString(pizza.getToppings().toArray()) };
|
|
id += 1;
|
|
}
|
|
return data;
|
|
}
|
|
|
|
public List<Pizza> getAll(String fileName) {
|
|
return PizzaIOHandler.read(fileName);
|
|
}
|
|
|
|
public void saveAll(List<Pizza> pizzas, String fileName) {
|
|
PizzaIOHandler.write(pizzas, fileName);
|
|
}
|
|
|
|
public void saveAllFromInternData() {
|
|
saveAll(pizzas, null);
|
|
}
|
|
|
|
} |