]> git.somenet.org - pub/jan/sbc.git/blob - src/main/java/at/ac/tuwien/sbc/valesriegler/pizzeria/gui/tablemodels/PizzasOfOrderModel.java
Space cooks prepare pizzas and Pizzeria GUI shows that
[pub/jan/sbc.git] / src / main / java / at / ac / tuwien / sbc / valesriegler / pizzeria / gui / tablemodels / PizzasOfOrderModel.java
1 package at.ac.tuwien.sbc.valesriegler.pizzeria.gui.tablemodels;
2
3 import java.util.List;
4 import java.util.Map;
5
6 import at.ac.tuwien.sbc.valesriegler.common.TableModel;
7 import at.ac.tuwien.sbc.valesriegler.common.Util;
8 import at.ac.tuwien.sbc.valesriegler.types.Order;
9 import at.ac.tuwien.sbc.valesriegler.types.Pizza;
10 import at.ac.tuwien.sbc.valesriegler.types.PizzaOrder;
11
12 public class PizzasOfOrderModel extends TableModel<Order> {
13         private static final String TYPE = "Type";
14         private static final String STATUS = "Status";
15         private static final String COOK = "Cook";
16
17         private static final String[] COLUMNS = new String[] { TYPE, STATUS, COOK };
18
19         private Order currentOrder;
20
21         public void setCurrentOrder(Order currentOrder) {
22                 this.currentOrder = currentOrder;
23
24                 fireTableDataChanged();
25         }
26
27         @Override
28         public Object getValueAt(int rowIndex, int columnIndex) {
29                 List<PizzaOrder> pizzaOrders = currentOrder.getOrderedPizzas();
30
31                 PizzaOrder pizzaOrder = pizzaOrders.get(rowIndex);
32                 String wantedColumn = COLUMNS[columnIndex];
33                 switch (wantedColumn) {
34                 case TYPE:
35                         return pizzaOrder.getPizzaType();
36                 case STATUS:
37                         return pizzaOrder.getStatus();
38                 case COOK:
39                         return pizzaOrder.getCookId();
40                 default:
41                         throw new RuntimeException(UNHANDLEDCOLUMN);
42                 }
43         }
44
45         @Override
46         protected String[] getColumns() {
47                 return COLUMNS;
48         }
49
50         @Override
51         public int getRowCount() {
52                 return currentOrder == null ? 0 : currentOrder.getOrderedPizzas().size();
53         }
54
55 }