Advertisement
Guest User

Untitled

a guest
Nov 18th, 2016
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.11 KB | None | 0 0
  1. package bg.softuni.service;
  2.  
  3. import java.util.List;
  4.  
  5. import javax.ejb.Stateless;
  6. import javax.persistence.EntityManager;
  7. import javax.persistence.NoResultException;
  8. import javax.persistence.PersistenceContext;
  9. import javax.persistence.Query;
  10. import javax.persistence.TypedQuery;
  11.  
  12. import bg.softuni.entity.UserModel;
  13.  
  14. /**
  15. * Session Bean implementation class UserService
  16. */
  17. @Stateless
  18. public class UserService implements UserServiceLocal {
  19.  
  20. @PersistenceContext
  21. protected EntityManager entityManager;
  22.  
  23.  
  24. @SuppressWarnings("unchecked")
  25. @Override
  26. public List<UserModel> findAllUsers() {
  27. String query = "select model from UserModel model order by upper(model.username) asc";
  28. Query q = entityManager.createQuery(query);
  29.  
  30. return q.getResultList();
  31. }
  32.  
  33. @SuppressWarnings("unchecked")
  34. @Override
  35. public List<UserModel> getAllUsersforDisplay() {
  36. String query = "select new UserModel(usermodel.id, usermodel.username, usermodel.password, usermodel.firstName, usermodel.lastName, usermodel.email, COUNT(postmodel)) from UserModel usermodel left join usermodel.posts postModel group by usermodel.id order by upper(usermodel.username) asc";
  37. Query q = entityManager.createQuery(query);
  38.  
  39. return q.getResultList();
  40. }
  41.  
  42. @Override
  43. public UserModel save(UserModel entity) {
  44. entityManager.persist(entity);
  45. return entity;
  46. }
  47.  
  48. @Override
  49. public UserModel update(UserModel entity) {
  50. entityManager.merge(entity);
  51. entityManager.flush();
  52. return entity;
  53. }
  54.  
  55. @Override
  56. public void delete(UserModel entity) {
  57. entityManager.remove(entity);
  58. }
  59.  
  60. @Override
  61. public UserModel findById(Long id) {
  62. try {
  63. UserModel instance = entityManager.find(UserModel.class, id);
  64. return instance;
  65. } catch (RuntimeException re) {
  66. throw re;
  67. }
  68. }
  69.  
  70. @Override
  71. public UserModel loginUser(String aUsername, String aPassword) {
  72. StringBuffer query = new StringBuffer(
  73. "select model from UserModel model where model.username = :em and model.password = :p");
  74.  
  75. Query q = entityManager.createQuery(query.toString());
  76. q.setParameter("em", aUsername);
  77. q.setParameter("p", aPassword);
  78.  
  79. try {
  80. return (UserModel) q.getSingleResult();
  81. } catch (NoResultException nre) {
  82. // the user doesn't exist
  83. return null;
  84. }
  85. }
  86.  
  87. @Override
  88. public UserModel checkUserExists(String username, Long id) {
  89. StringBuffer query = new StringBuffer(
  90. "select model from UserModel model where upper(model.username) = upper(:em)");
  91.  
  92. if (id != null) {
  93. query.append(" and model.id <> ").append(id);
  94. }
  95.  
  96. Query q = entityManager.createQuery(query.toString());
  97. q.setParameter("em", username);
  98.  
  99. try {
  100. return (UserModel) q.getSingleResult();
  101. } catch (NoResultException nre) {
  102. // the user doesnt exist
  103. return null;
  104. }
  105. }
  106.  
  107.  
  108. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement