1 package at.ac.tuwien.sbc.valesriegler.types;
3 import java.io.Serializable;
6 import org.mozartspaces.capi3.Queryable;
8 import at.ac.tuwien.sbc.valesriegler.common.HasId;
9 import at.ac.tuwien.sbc.valesriegler.common.Util;
10 import at.ac.tuwien.sbc.valesriegler.group.Group;
13 * Object denotes a Group's interest in pizzas and the state of the pizzas
19 @Queryable(autoindex=true)
20 public class Order implements Serializable, HasId {
21 private static int idNext = 0;
23 private Integer groupId;
24 private OrderStatus status;
26 private List<PizzaOrder> orderedPizzas;
27 private List<Pizza> cookedPizzas;
29 // this is necessary so that i can make a xvsm linda selection on it
30 private Integer numberOfPizzas;
34 public Order(int groupId, List<PizzaOrder> orderedPizzas) {
36 this.groupId = groupId;
37 status = OrderStatus.NEW;
38 this.orderedPizzas = orderedPizzas;
42 public Order(Group group, List<PizzaOrder> orderedPizzas) {
44 groupId = group.getGroupData().getId();
45 status = OrderStatus.NEW;
46 this.orderedPizzas = orderedPizzas;
50 public List<Pizza> getCookedPizzas() {
54 public int getGroupId() {
58 public int getNumberOfPizzas() {
59 return Util.getIntSafe(numberOfPizzas);
62 public void setNumberOfPizzas(Integer numberOfPizzas) {
63 this.numberOfPizzas = numberOfPizzas;
66 public void setId(Integer id) {
74 public List<PizzaOrder> getOrderedPizzas() {
78 public OrderStatus getStatus() {
82 public void setCookedPizzas(List<Pizza> cookedPizzas) {
83 this.cookedPizzas = cookedPizzas;
86 public void setGroupId(int groupId) {
87 this.groupId = groupId;
90 public void setOrderedPizzas(List<PizzaOrder> orderedPizzas) {
91 this.orderedPizzas = orderedPizzas;
94 public void setStatus(OrderStatus status) {
99 public String toString() {
100 return "Order [id=" + id + ", groupId=" + groupId + ", status=" + status + ", orderedPizzas=" + orderedPizzas
101 + ", cookedPizzas=" + cookedPizzas + "]";