From 17c080faa2e2f0762967df2e37f43d7e9223b123 Mon Sep 17 00:00:00 2001 From: Joern Muehlencord Date: Sat, 10 Nov 2018 16:48:32 +0100 Subject: [PATCH] added create / update methods --- .../ApplicationPermissionControl.java | 20 +++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/account/src/main/java/de/muehlencord/shared/account/business/account/boundary/ApplicationPermissionControl.java b/account/src/main/java/de/muehlencord/shared/account/business/account/boundary/ApplicationPermissionControl.java index ebb366f..bd1c223 100644 --- a/account/src/main/java/de/muehlencord/shared/account/business/account/boundary/ApplicationPermissionControl.java +++ b/account/src/main/java/de/muehlencord/shared/account/business/account/boundary/ApplicationPermissionControl.java @@ -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 public void createOrUpdate(String name, String description) { ApplicationPermissionEntity permission = findByName(name); @@ -44,19 +56,19 @@ public class ApplicationPermissionControl implements Serializable { em.merge(permission); } } - + public void delete(ApplicationPermissionEntity permission) throws AccountException { ApplicationPermissionEntity existingPermission = attach(permission); - em.remove(existingPermission); + em.remove(existingPermission); } - + public ApplicationPermissionEntity attach(ApplicationPermissionEntity permission) throws AccountException { try { return em.merge(permission); } catch (OptimisticLockException ex) { throw new AccountException("Entity updated / deleted, please reload", true); } - } + } private ApplicationPermissionEntity findByName(String name) { Query query = em.createNamedQuery("ApplicationPermissionEntity.findByPermissionName");