Order.java
package ejava.examples.asyncmarket.bo;
import java.io.Serializable;
import javax.persistence.*;
@Entity @Table(name="ASYNCMARKET_ORDER")
@NamedQueries({
@NamedQuery(name="AsyncMarket_getOrders",
query="select o from Order o"),
@NamedQuery(name="AsyncMarket_getOrdersForItem",
query="select o from Order o " +
"where o.item.id = :itemId")
})
public class Order implements Serializable {
private static final long serialVersionUID = 1L;
@Id @GeneratedValue(strategy=GenerationType.IDENTITY)
private long id;
@Version
private long version;
@ManyToOne(optional=false, fetch=FetchType.EAGER)
private Person buyer;
@ManyToOne(optional=false, fetch=FetchType.EAGER)
private AuctionItem item;
private double maxBid;
public Order() {}
public Order(long id) { setId(id); }
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
public long getVersion() {
return version;
}
public void setVersion(long version) {
this.version = version;
}
public Person getBuyer() {
return buyer;
}
public void setBuyer(Person buyer) {
this.buyer = buyer;
}
public AuctionItem getItem() {
return item;
}
public void setItem(AuctionItem item) {
this.item = item;
}
public double getMaxBid() {
return maxBid;
}
public void setMaxBid(double maxBid) {
this.maxBid = maxBid;
}
public String toString() {
StringBuilder text = new StringBuilder();
text.append("id=" + id);
text.append(", version=" + version);
text.append(", maxBid=" + maxBid);
text.append(", buyer=" + buyer.getUserId());
text.append(", item=" + item);
text.append(", highestBid=" + item.getHighestBid());
return text.toString();
}
}