made applyUpdateableChanges callable from parent class
This commit is contained in:
@ -50,7 +50,7 @@ public abstract class AbstractController<T> {
|
||||
protected EntityManager em;
|
||||
|
||||
@Inject
|
||||
Account account;
|
||||
protected Account account;
|
||||
|
||||
private final Class<T> entityClass;
|
||||
|
||||
@ -58,6 +58,15 @@ public abstract class AbstractController<T> {
|
||||
this.entityClass = clazz;
|
||||
}
|
||||
|
||||
public void applyUpdateableChanges(Updateable updateable, boolean onCreate) {
|
||||
if (onCreate) {
|
||||
updateable.setCreatedBy(account.getUsername());
|
||||
updateable.setCreatedOn(new Date());
|
||||
}
|
||||
updateable.setLastUpdatedBy(account.getUsername());
|
||||
updateable.setLastUpdatedOn(new Date());
|
||||
}
|
||||
|
||||
public T attach(T entity) {
|
||||
return em.merge(entity);
|
||||
}
|
||||
@ -68,10 +77,7 @@ public abstract class AbstractController<T> {
|
||||
public void create(T entity) {
|
||||
if (Updateable.class.isAssignableFrom(entity.getClass())) {
|
||||
Updateable updateable = (Updateable) entity;
|
||||
updateable.setCreatedBy(account.getUsername());
|
||||
updateable.setCreatedOn(new Date());
|
||||
updateable.setLastUpdatedBy(account.getUsername());
|
||||
updateable.setLastUpdatedOn(new Date());
|
||||
applyUpdateableChanges(updateable, true);
|
||||
}
|
||||
em.persist(entity);
|
||||
}
|
||||
@ -82,8 +88,7 @@ public abstract class AbstractController<T> {
|
||||
public T update(T entity) {
|
||||
if (Updateable.class.isAssignableFrom(entity.getClass())) {
|
||||
Updateable updateable = (Updateable) entity;
|
||||
updateable.setLastUpdatedBy(account.getUsername());
|
||||
updateable.setLastUpdatedOn(new Date());
|
||||
applyUpdateableChanges(updateable, false);
|
||||
}
|
||||
return em.merge(entity);
|
||||
}
|
||||
@ -145,5 +150,4 @@ public abstract class AbstractController<T> {
|
||||
return of.getId(of.getIdType().getJavaType());
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user