package com.sobey.cmop.mvc.entity; import static javax.persistence.GenerationType.IDENTITY; import java.util.Date; import java.util.HashSet; import java.util.Set; import javax.persistence.CascadeType; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.FetchType; import javax.persistence.GeneratedValue; import javax.persistence.Id; import javax.persistence.JoinColumn; import javax.persistence.ManyToOne; import javax.persistence.OneToMany; import javax.persistence.Table; import com.fasterxml.jackson.annotation.JsonBackReference; /** * ServiceTag entity. @author MyEclipse Persistence Tools */ @Entity @Table(name = "change", catalog = "cmop") public class Change implements java.io.Serializable { // Fields private Integer id; private Resources resources; private Integer subResourcesId; private User user; private Date changeTime; private String description; private Set<ChangeItem> changeItems = new HashSet<ChangeItem>(0); // Constructors /** default constructor */ public Change() { } /** minimal constructor */ public Change(Resources resources, User user, Date changeTime) { this.resources = resources; this.user = user; this.changeTime = changeTime; } /** full constructor */ public Change(Resources resources, Integer subResourcesId, User user, Date changeTime, String description, Set<ChangeItem> changeItems) { this.resources = resources; this.subResourcesId = subResourcesId; this.user = user; this.changeTime = changeTime; this.description = description; this.changeItems = changeItems; } // Property accessors @Id @GeneratedValue(strategy = IDENTITY) @Column(name = "id", unique = true, nullable = false) public Integer getId() { return this.id; } public void setId(Integer id) { this.id = id; } @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "resources_id", nullable = false) public Resources getResources() { return this.resources; } public void setResources(Resources resources) { this.resources = resources; } @Column(name = "sub_resources_id") public Integer getSubResourcesId() { return subResourcesId; } public void setSubResourcesId(Integer subResourcesId) { this.subResourcesId = subResourcesId; } @JsonBackReference @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "user_id", nullable = false) public User getUser() { return this.user; } public void setUser(User user) { this.user = user; } @Column(name = "change_time", nullable = false, length = 19) public Date getChangeTime() { return this.changeTime; } public void setChangeTime(Date changeTime) { this.changeTime = changeTime; } @Column(name = "description", length = 200) public String getDescription() { return this.description; } public void setDescription(String description) { this.description = description; } @OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "change") public Set<ChangeItem> getChangeItems() { return changeItems; } public void setChangeItems(Set<ChangeItem> changeItems) { this.changeItems = changeItems; } }