]> git.somenet.org - pub/jan/sbc.git/blob - src/main/java/at/ac/tuwien/sbc/valesriegler/pizzeria/gui/tablemodels/DeliveryDetailsModel.java
[XVSM] Some GroupAgent Container Refactoring. Full Driver<->DeliveryCustomer communic...
[pub/jan/sbc.git] / src / main / java / at / ac / tuwien / sbc / valesriegler / pizzeria / gui / tablemodels / DeliveryDetailsModel.java
1 package at.ac.tuwien.sbc.valesriegler.pizzeria.gui.tablemodels;
2
3
4 import at.ac.tuwien.sbc.valesriegler.common.TableModel;
5 import at.ac.tuwien.sbc.valesriegler.common.Util;
6 import at.ac.tuwien.sbc.valesriegler.types.DeliveryGroupData;
7
8 public class DeliveryDetailsModel extends TableModel<DeliveryGroupData> {
9     private static final String WAITER_ID = "Waiter ID";
10     private static final String DRIVER_ID = "Driver ID";
11     private static final String[] COLUMNS = new String[] {WAITER_ID, DRIVER_ID};
12
13     protected DeliveryGroupData groupData;
14
15     public void setCurrentDelivery(DeliveryGroupData groupData) {
16         this.groupData = groupData;
17
18         fireTableDataChanged();
19     }
20
21     @Override
22     public int getRowCount() {
23         return groupData == null ? 0 : 1;
24     }
25
26     @Override
27     public Object getValueAt(int rowIndex, int columnIndex) {
28         if (rowIndex > 0)
29             return null;
30
31         String wantedColumn = COLUMNS[columnIndex];
32         switch (wantedColumn) {
33             case WAITER_ID:
34                 return Util.getId(groupData.getWaiterIdOfOrder());
35             case DRIVER_ID:
36                 return Util.getId(groupData.getDriverId());
37             default:
38                 throw new RuntimeException(UNHANDLEDCOLUMN);
39         }
40     }
41
42     @Override
43     protected String[] getColumns() {
44         return COLUMNS;
45     }
46
47     public DeliveryGroupData getCurrentDelivery() {
48         return groupData;
49     }
50 }