UserService.java 2.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. package es.uv.garcosda.services;
  2. import java.util.ArrayList;
  3. import java.util.Arrays;
  4. import java.util.List;
  5. import java.util.stream.Collectors;
  6. import org.springframework.stereotype.Service;
  7. import es.uv.garcosda.domain.Mail;
  8. import es.uv.garcosda.domain.Mailbox;
  9. import es.uv.garcosda.domain.User;
  10. @Service
  11. public class UserService {
  12. private List<User> users;
  13. private List<Mailbox> mailboxes;
  14. public UserService() {
  15. users = new ArrayList<User>(
  16. Arrays.asList(new User("Quintina.Ardra@yopmail.com","Quintina","Ardra"),
  17. new User("Sybille.Land@yopmail.com","Sybille","Land"),
  18. new User("Kimmy.Elisha@yopmail.com","Kimmy","Elisha"),
  19. new User("Jeanna.McGrody@yopmail.com","Jeanna","McGrody"),
  20. new User("Lelah.Haymes@yopmail.com","Lelah","Haymes"),
  21. new User("Edith.Milson@yopmail.com","Edith","Milson"),
  22. new User("Minne.Eugenia@yopmail.com","Minne","Eugenia"),
  23. new User("Abbie.Brittani@yopmail.com","Abbie","Brittani"),
  24. new User("Brianna.Tacye@yopmail.com","Brianna","Tacye"),
  25. new User("Gabi.Clarissa@yopmail.com","Gabi","Clarissa"),
  26. new User("Aili.Evvie@yopmail.com","Aili","Evvie"),
  27. new User("Jillayne.Plato@yopmail.com","Jillayne","Plato"),
  28. new User("Allis.Daniele@yopmail.com","Allis","Daniele"),
  29. new User("Sam.Guildroy@yopmail.com","Sam","Guildroy"),
  30. new User("Sam.Argus@yopmail.com","Sam","Argus"),
  31. new User("Lorne.Kirbee@yopmail.com","Lorne","Kirbee"),
  32. new User("Brianna.Georgy@yopmail.com","Brianna","Georgy"),
  33. new User("Tarra.Gino@yopmail.com","Tarra","Gino"),
  34. new User("Elvira.Thornburg@yopmail.com","Elvira","Thornburg"),
  35. new User("Paola.Alice@yopmail.com","Paola","Alice")
  36. ));
  37. mailboxes = new ArrayList<Mailbox>();
  38. for(User u : users) {
  39. mailboxes.add(new Mailbox(u));
  40. }
  41. }
  42. public List<User> findAll(){
  43. return this.users;
  44. }
  45. public User findByEmail(String email) {
  46. List<User> ps = this.users.stream().filter(x -> x.getEmail().toLowerCase().equals(email.toLowerCase())).collect(Collectors.toList());
  47. if(ps.size() > 0) {
  48. return ps.get(0);
  49. }
  50. return new User();
  51. }
  52. public Mailbox findMailboxByEmail(String m) {
  53. List<Mailbox> boxes = this.mailboxes.stream().filter(x -> x.getUser().getEmail().toLowerCase().equals(m.toLowerCase())).collect(Collectors.toList());
  54. if(boxes.size() > 0) {
  55. Mailbox box = boxes.get(0);
  56. return box;
  57. }
  58. return new Mailbox();
  59. }
  60. public boolean addMail(Mail m) {
  61. List<Mailbox> boxes = this.mailboxes.stream().filter(x -> x.getUser().getEmail().toLowerCase().equals(m.getTo().getEmail().toLowerCase())).collect(Collectors.toList());
  62. if(boxes.size() > 0) {
  63. Mailbox box = boxes.get(0);
  64. box.addMail(m);
  65. return true;
  66. }
  67. return false;
  68. }
  69. }