package net.curisit.securis.db; import java.io.Serializable; import java.util.Date; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.Id; import javax.persistence.JoinColumn; import javax.persistence.ManyToOne; import javax.persistence.NamedQueries; import javax.persistence.NamedQuery; import javax.persistence.Table; import com.fasterxml.jackson.annotation.JsonAutoDetect; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonInclude.Include; import com.fasterxml.jackson.annotation.JsonProperty; /** * Entity implementation class for Entity: license * */ @JsonAutoDetect @JsonInclude(Include.NON_NULL) @Entity @Table(name = "license_history") @JsonIgnoreProperties(ignoreUnknown = true) @NamedQueries({ @NamedQuery(name = "list-license-history", query = "SELECT lh FROM LicenseHistory lh where lh.license.id = :licId") }) public class LicenseHistory implements Serializable { private static final long serialVersionUID = 1L; @Id @GeneratedValue private int id; @JsonIgnore @ManyToOne @JoinColumn(name = "license_id") private License license; @JsonIgnore @ManyToOne @JoinColumn(name = "username") private User user; private String action; private String comments; private Date timestamp; public int getId() { return id; } public License getLicense() { return license; } public void setLicense(License license) { this.license = license; } public User getUser() { return user; } @JsonProperty("username") public String getUsername() { return user == null ? null : user.getUsername(); } public void setUser(User user) { this.user = user; } public String getAction() { return action; } public void setAction(String action) { this.action = action; } public String getComments() { return comments; } public void setComments(String comments) { this.comments = comments; } public Date getTimestamp() { return timestamp; } public void setTimestamp(Date timestamp) { this.timestamp = timestamp; } public void setId(int id) { this.id = id; } public static class Actions { public static final String CREATE = "creation"; public static final String ADD_REQUEST = "request"; public static final String SEND = "send"; public static final String MODIFY = "modify"; public static final String DOWNLOAD = "download"; public static final String ACTIVATE = "activate"; public static final String CANCEL = "cancel"; public static final String BLOCK = "block"; public static final String UNBLOCK = "unblock"; public static final String DELETE = "delete"; } }