rsanchez
2014-11-18 fdbc8ca146b8e3aff0425e2faf94c0b4a6e3dd28
securis/src/main/java/net/curisit/securis/db/License.java
....@@ -8,6 +8,7 @@
88
99 import javax.persistence.Column;
1010 import javax.persistence.Entity;
11
+import javax.persistence.EntityListeners;
1112 import javax.persistence.EntityManager;
1213 import javax.persistence.FetchType;
1314 import javax.persistence.GeneratedValue;
....@@ -23,6 +24,10 @@
2324 import javax.persistence.TypedQuery;
2425
2526 import net.curisit.integrity.commons.Utils;
27
+import net.curisit.securis.db.common.CreationTimestampEntity;
28
+import net.curisit.securis.db.common.ModificationTimestampEntity;
29
+import net.curisit.securis.db.listeners.CreationTimestampListener;
30
+import net.curisit.securis.db.listeners.ModificationTimestampListener;
2631 import net.curisit.securis.services.exception.SeCurisServiceException;
2732 import net.curisit.securis.services.exception.SeCurisServiceException.ErrorCodes;
2833
....@@ -33,16 +38,20 @@
3338 import com.fasterxml.jackson.annotation.JsonAutoDetect;
3439 import com.fasterxml.jackson.annotation.JsonIgnore;
3540 import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
41
+import com.fasterxml.jackson.annotation.JsonInclude;
42
+import com.fasterxml.jackson.annotation.JsonInclude.Include;
3643 import com.fasterxml.jackson.annotation.JsonProperty;
37
-import com.fasterxml.jackson.databind.annotation.JsonSerialize;
3844
3945 /**
4046 * Entity implementation class for Entity: license
4147 *
4248 */
4349 @JsonAutoDetect
44
-@JsonSerialize(include = JsonSerialize.Inclusion.NON_NULL)
50
+@JsonInclude(Include.NON_NULL)
4551 @Entity
52
+@EntityListeners({
53
+ CreationTimestampListener.class, ModificationTimestampListener.class
54
+})
4655 @Table(name = "license")
4756 @JsonIgnoreProperties(ignoreUnknown = true)
4857 @NamedQueries({
....@@ -50,7 +59,8 @@
5059 @NamedQuery(name = "list-licenses-by-req-data", query = "SELECT l FROM License l where l.reqDataHash = :hash"),
5160 @NamedQuery(name = "list-active-licenses-by-req-data", query = "SELECT l FROM License l where l.reqDataHash = :hash and l.status in ('AC', 'PA')")
5261 })
53
-public class License implements Serializable {
62
+public class License implements CreationTimestampEntity, ModificationTimestampEntity, Serializable {
63
+
5464 private static final long serialVersionUID = 2700310404904877227L;
5565
5666 private static final Logger LOG = LogManager.getLogger(License.class);
....@@ -134,10 +144,12 @@
134144 this.code = code;
135145 }
136146
147
+ @Override
137148 public Date getCreationTimestamp() {
138149 return creationTimestamp;
139150 }
140151
152
+ @Override
141153 public void setCreationTimestamp(Date creationTimestamp) {
142154 this.creationTimestamp = creationTimestamp;
143155 }
....@@ -216,10 +228,12 @@
216228 this.status = status;
217229 }
218230
231
+ @Override
219232 public Date getModificationTimestamp() {
220233 return modificationTimestamp;
221234 }
222235
236
+ @Override
223237 public void setModificationTimestamp(Date modificationTimestamp) {
224238 this.modificationTimestamp = modificationTimestamp;
225239 }