package de.hsadmin.mods.pac; import java.io.Serializable; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.IdClass; import javax.persistence.JoinColumn; import javax.persistence.ManyToOne; import javax.persistence.Table; @Entity(name = "Components") @Table(name = "component") @IdClass(ComponentId.class) public class Component implements Serializable { private static final long serialVersionUID = 970709621200712794L; @Id @Column(name="basepacket_id", insertable=false, updatable=false) private long basePacId; @Id @Column(name="basecomponent_id", insertable=false, updatable=false) private long baseComponentId; @ManyToOne @JoinColumn(name="basepacket_id") private BasePac basePac; @ManyToOne @JoinColumn(name="basecomponent_id") private BaseComponent baseComponent; @Column(name = "min_quantity", columnDefinition = "integer") private int minimumQuantity; @Column(name = "max_quantity", columnDefinition = "integer") private int maximimumQuantity; @Column(name = "default_quantity", columnDefinition = "integer") private int defaultQuantity; @Column(name = "increment_quantity", columnDefinition = "integer") private int incrementQuantity; @Column(name = "include_quantity", columnDefinition = "integer") private int includedQuantity; @Column(name = "admin_only", columnDefinition = "boolean") private boolean adminOnly; public Component() { } public Component(BasePac basePac, BaseComponent baseComp, int min, int max, int def, int incr, int incl, boolean adminOnly) { this.setBasePacId(basePac.id()); this.basePac = basePac; this.setBaseComponentId(baseComp.id()); this.baseComponent = baseComp; this.minimumQuantity = min; this.maximimumQuantity = max; this.defaultQuantity = def; this.incrementQuantity = incr; this.includedQuantity = incl; this.adminOnly = adminOnly; } public BasePac getBasePac() { return basePac; } public void setBasePac(BasePac basePac) { this.setBasePacId(basePac.id()); this.basePac = basePac; } public BaseComponent getBaseComponent() { return baseComponent; } public void setBaseComponent(BaseComponent baseComponent) { this.setBaseComponentId(baseComponent.id()); this.baseComponent = baseComponent; } public int getMinimumQuantity() { return minimumQuantity; } public void setMinimumQuantity(int minimumQuantity) { this.minimumQuantity = minimumQuantity; } public int getMaximimumQuantity() { return maximimumQuantity; } public void setMaximimumQuantity(int maximimumQuantity) { this.maximimumQuantity = maximimumQuantity; } public int getDefaultQuantity() { return defaultQuantity; } public void setDefaultQuantity(int defiautoQuantity) { this.defaultQuantity = defiautoQuantity; } public int getIncrementQuantity() { return incrementQuantity; } public void setIncrementQuantity(int incrementQuantity) { this.incrementQuantity = incrementQuantity; } public int getIncludedQuantity() { return includedQuantity; } public void setIncludedQuantity(int includedQuantity) { this.includedQuantity = includedQuantity; } public boolean isAdminOnly() { return adminOnly; } public void setAdminOnly(boolean adminOnly) { this.adminOnly = adminOnly; } public void setBasePacId(long basePacId) { this.basePacId = basePacId; } public long getBasePacId() { return basePacId; } public void setBaseComponentId(long baseComponentId) { this.baseComponentId = baseComponentId; } public long getBaseComponentId() { return baseComponentId; } }