public static void syncRoles(DbConn cnx, List<RRoleDto> dtos) { for (RRoleDto existing : getRoles(cnx)) { boolean foundInNewSet = false; for (RRoleDto newdto : dtos) { if (newdto.getId() != null && newdto.getId().equals(existing.getId())) { foundInNewSet = true; break; } } if (!foundInNewSet) { deleteRole(cnx, existing.getId(), false); } } for (RRoleDto dto : dtos) { upsertRole(cnx, dto); } }
public static void syncRoles(DbConn cnx, List<RRoleDto> dtos) { for (RRoleDto existing : getRoles(cnx)) { boolean foundInNewSet = false; for (RRoleDto newdto : dtos) { if (newdto.getId() != null && newdto.getId().equals(existing.getId())) { foundInNewSet = true; break; } } if (!foundInNewSet) { deleteRole(cnx, existing.getId(), false); } } for (RRoleDto dto : dtos) { upsertRole(cnx, dto); } }
public static void upsertRole(DbConn cnx, RRoleDto dto) { if (dto.getId() != null) { cnx.runUpdate("role_update_all_by_id", dto.getName(), dto.getDescription(), dto.getId()); // Permissions cnx.runUpdate("perm_delete_for_role", dto.getId()); for (String i : dto.getPermissions()) { cnx.runUpdate("perm_insert", i, dto.getId()); } } else { RRole.create(cnx, dto.getName(), dto.getDescription(), dto.getPermissions().toArray(new String[dto.getPermissions().size()])); } }
public static void upsertRole(DbConn cnx, RRoleDto dto) { if (dto.getId() != null) { cnx.runUpdate("role_update_all_by_id", dto.getName(), dto.getDescription(), dto.getId()); // Permissions cnx.runUpdate("perm_delete_for_role", dto.getId()); for (String i : dto.getPermissions()) { cnx.runUpdate("perm_insert", i, dto.getId()); } } else { RRole.create(cnx, dto.getName(), dto.getDescription(), dto.getPermissions().toArray(new String[dto.getPermissions().size()])); } }