1 package at.ac.tuwien.sbc.valesriegler.pizzeria.gui.tablemodels;
3 import at.ac.tuwien.sbc.valesriegler.common.TableModel;
4 import at.ac.tuwien.sbc.valesriegler.types.DeliveryGroupData;
5 import at.ac.tuwien.sbc.valesriegler.types.Order;
6 import org.slf4j.Logger;
7 import org.slf4j.LoggerFactory;
9 import java.util.ArrayList;
10 import java.util.List;
12 public class DeliveryOrdersModel extends TableModel<DeliveryGroupData> {
13 private static final Logger log = LoggerFactory.getLogger(DeliveryOrdersModel.class);
15 private static final String ID = "Delivery ID";
16 private static final String DELIVERY_ADDRESS = "Address";
17 private static final String STATUS = "Status";
18 private static final String LOAD_BALANCER_ID = "Moved by";
19 private static final String ORIGINAL_PIZZERIA = "Moved from";
21 private static final String[] COLUMNS = new String[] { ID, DELIVERY_ADDRESS, STATUS, LOAD_BALANCER_ID, ORIGINAL_PIZZERIA };
24 protected String[] getColumns() {
29 public Object getValueAt(int rowIndex, int columnIndex) {
30 List<DeliveryGroupData> values = new ArrayList<>(items.values());
31 DeliveryGroupData group = values.get(rowIndex);
32 Order order = group.getOrder();
33 String wantedColumn = COLUMNS[columnIndex];
34 switch (wantedColumn) {
37 case DELIVERY_ADDRESS:
38 return group.getAddress();
40 return group.getDeliveryStatus();
41 case LOAD_BALANCER_ID:
42 return group.getLoadBalancerId();
43 case ORIGINAL_PIZZERIA:
44 return group.getOriginalPizzeriaId();
46 throw new RuntimeException(UNHANDLEDCOLUMN);