added create / update methods
This commit is contained in:
@ -33,6 +33,18 @@ public class ApplicationPermissionControl implements Serializable {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Transactional
|
||||||
|
public void create(String name, String description) {
|
||||||
|
ApplicationPermissionEntity permission = new ApplicationPermissionEntity(name, description);
|
||||||
|
em.persist(permission);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Transactional
|
||||||
|
public void update (ApplicationPermissionEntity permission) throws AccountException {
|
||||||
|
ApplicationPermissionEntity existing = attach(permission);
|
||||||
|
em.merge(existing);
|
||||||
|
}
|
||||||
|
|
||||||
@Transactional
|
@Transactional
|
||||||
public void createOrUpdate(String name, String description) {
|
public void createOrUpdate(String name, String description) {
|
||||||
ApplicationPermissionEntity permission = findByName(name);
|
ApplicationPermissionEntity permission = findByName(name);
|
||||||
@ -44,19 +56,19 @@ public class ApplicationPermissionControl implements Serializable {
|
|||||||
em.merge(permission);
|
em.merge(permission);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void delete(ApplicationPermissionEntity permission) throws AccountException {
|
public void delete(ApplicationPermissionEntity permission) throws AccountException {
|
||||||
ApplicationPermissionEntity existingPermission = attach(permission);
|
ApplicationPermissionEntity existingPermission = attach(permission);
|
||||||
em.remove(existingPermission);
|
em.remove(existingPermission);
|
||||||
}
|
}
|
||||||
|
|
||||||
public ApplicationPermissionEntity attach(ApplicationPermissionEntity permission) throws AccountException {
|
public ApplicationPermissionEntity attach(ApplicationPermissionEntity permission) throws AccountException {
|
||||||
try {
|
try {
|
||||||
return em.merge(permission);
|
return em.merge(permission);
|
||||||
} catch (OptimisticLockException ex) {
|
} catch (OptimisticLockException ex) {
|
||||||
throw new AccountException("Entity updated / deleted, please reload", true);
|
throw new AccountException("Entity updated / deleted, please reload", true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private ApplicationPermissionEntity findByName(String name) {
|
private ApplicationPermissionEntity findByName(String name) {
|
||||||
Query query = em.createNamedQuery("ApplicationPermissionEntity.findByPermissionName");
|
Query query = em.createNamedQuery("ApplicationPermissionEntity.findByPermissionName");
|
||||||
|
|||||||
Reference in New Issue
Block a user