]> git.somenet.org - pub/jan/sbc.git/blob - src/main/java/at/ac/tuwien/sbc/valesriegler/pizzeria/gui/tablemodels/OrdersOverviewModel.java
Merge branch 'master' of https://bitbucket.org/rgregor/sbc-ss-2013
[pub/jan/sbc.git] / src / main / java / at / ac / tuwien / sbc / valesriegler / pizzeria / gui / tablemodels / OrdersOverviewModel.java
1 package at.ac.tuwien.sbc.valesriegler.pizzeria.gui.tablemodels;
2
3 import java.util.ArrayList;
4 import java.util.List;
5
6 import at.ac.tuwien.sbc.valesriegler.common.TableModel;
7 import at.ac.tuwien.sbc.valesriegler.types.Order;
8
9 public class OrdersOverviewModel extends TableModel<Order> {
10         private static final String ID = "Order ID";
11         private static final String TABLE_ID = "Table ID";
12         private static final String GROUP_ID = "Group ID";
13         private static final String STATUS = "Status";
14
15         private static final String[] COLUMNS = new String[] { ID, TABLE_ID, GROUP_ID, STATUS };
16
17         @Override
18         public Object getValueAt(int rowIndex, int columnIndex) {
19                 List<Order> values = new ArrayList<>(items.values());
20                 Order order = values.get(rowIndex);
21                 String wantedColumn = COLUMNS[columnIndex];
22                 switch (wantedColumn) {
23                 case ID:
24                         return order.getId();
25                 case TABLE_ID: // FIXME: tableid!
26                         return new Integer(0);
27                 case GROUP_ID:
28                         return order.getGroupId();
29                 case STATUS:
30                         return order.getStatus();
31                 default:
32                         throw new RuntimeException(UNHANDLEDCOLUMN);
33                 }
34         }
35         
36         public Order getOrderOfRow(int rowIndex) {
37                 return new ArrayList<>(items.values()).get(rowIndex);
38         }
39
40         @Override
41         protected String[] getColumns() {
42                 return COLUMNS;
43         }
44
45 }