package org.hibernate.jpa.test.criteria.fetchscroll;
import javax.persistence.*;
@Entity
@Table(name = "order_lines")
public class OrderLine {
private OrderLineId id;
private Product product;
private Order header;
public OrderLine() {
}
public OrderLine(Order order, Long lineNumber, Product product) {
this.id = new OrderLineId();
this.id.setPurchaseOrgId(order.getId().getPurchaseOrgId());
this.id.setNumber(order.getId().getNumber());
this.id.setLineNumber(lineNumber);
this.header = order;
this.product = product;
}
@EmbeddedId
public OrderLineId getId() {
return id;
}
public void setId(OrderLineId id) {
this.id = id;
}
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumns({
@JoinColumn(name = "FACILITY_ID", referencedColumnName = "FACILITY_ID", nullable = false, updatable = false),
@JoinColumn(name = "PRODUCT_ID", referencedColumnName = "PRODUCT_ID", nullable = false, updatable = false)
})
public Product getProduct() {
return product;
}
public void setProduct(Product product) {
this.product = product;
}
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumns({
@JoinColumn(name = "PURCHASE_ORG_ID", referencedColumnName = "PURCHASE_ORG_ID", nullable = false, insertable = false, updatable = false),
@JoinColumn(name = "ORDER_NUMBER", referencedColumnName = "ORDER_NUMBER", nullable = false, insertable = false, updatable = false)
})
public Order getHeader() {
return header;
}
public void setHeader(Order header) {
this.header = header;
}
}