Prog2UE/de.hhn.ai.prog2.blatt3.pizzashop/src/services/PizzaService.java
2019-07-11 01:23:41 +02:00

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);
}
}