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