Advertisement
Guest User

Untitled

a guest
Jan 17th, 2019
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 6.23 KB | None | 0 0
  1. package services;
  2.  
  3. import java.util.ArrayList;
  4. import java.util.Collection;
  5. import java.util.List;
  6.  
  7. import javax.transaction.Transactional;
  8.  
  9. import org.springframework.beans.factory.annotation.Autowired;
  10. import org.springframework.stereotype.Service;
  11. import org.springframework.util.Assert;
  12.  
  13. import repositories.MessageBoxRepository;
  14. import domain.Actor;
  15. import domain.Message;
  16. import domain.MessageBox;
  17.  
  18. @Service
  19. @Transactional
  20. public class MessageBoxService {
  21.  
  22.     // Managed repository ----------------------
  23.  
  24.     @Autowired
  25.     private MessageBoxRepository messageBoxRepository;
  26.  
  27.     // Supporting services -------------------
  28.  
  29.     @Autowired
  30.     private ActorService actorService;
  31.  
  32.     @Autowired
  33.     private UtilityService utilityService;
  34.  
  35.     // Constructors ------------------------------------
  36.  
  37.     public MessageBoxService() {
  38.         super();
  39.     }
  40.  
  41.     // CRUD Methods --------------------------------
  42.  
  43.     public MessageBox create() {
  44.         MessageBox result;
  45.         Actor principal;
  46.         Collection<Message> messages;
  47.  
  48.         principal = this.actorService.findByPrincipal();
  49.         Assert.notNull(principal);
  50.  
  51.         messages = new ArrayList<Message>();
  52.  
  53.         result = new MessageBox();
  54.         Assert.notNull(result);
  55.  
  56.         result.setMessages(messages);
  57.  
  58.         return result;
  59.     }
  60.  
  61.     public MessageBox findOne(final int messageBoxId) {
  62.         MessageBox result;
  63.  
  64.         result = this.messageBoxRepository.findOne(messageBoxId);
  65.         Assert.notNull(result);
  66.  
  67.         return result;
  68.     }
  69.  
  70.     public Collection<MessageBox> findAll() {
  71.         Collection<MessageBox> result;
  72.  
  73.         result = this.messageBoxRepository.findAll();
  74.         Assert.notNull(result);
  75.  
  76.         return result;
  77.     }
  78.  
  79.     public MessageBox save(final MessageBox messageBox) {
  80.         MessageBox result;
  81.         Collection<MessageBox> boxes;
  82.         Actor principal;
  83.  
  84.         Assert.notNull(messageBox);
  85.         principal = this.actorService.findByPrincipal();
  86.         Assert.notNull(principal);
  87.  
  88.         if (messageBox.getIsPredefined()) {
  89.             if (!(messageBox.getId() == 0 && (messageBox.getName().equals(
  90.                     "In Box")
  91.                     || messageBox.getName().equals("Out box")
  92.                     || messageBox.getName().equals("Spam box") || messageBox
  93.                     .getName().equals("Trsh box")))) {
  94.             } else {
  95.                 Assert.isTrue(this.findOne(messageBox.getId())
  96.                         .getIsPredefined());
  97.                 Assert.isTrue(this.findOne(messageBox.getId()).getName() == messageBox
  98.                         .getName());
  99.             }
  100.         } else {
  101.             if (messageBox.getId() == 0) {
  102.                 for (MessageBox messageB : principal.getMessageBoxes()) {
  103.                     Assert.isTrue(!messageB.getName().equals(
  104.                             messageBox.getName()));
  105.                 }
  106.             }
  107.             if (messageBox.getId() != 0) {
  108.                 boxes = principal.getMessageBoxes();
  109.                 boxes.remove(messageBox);
  110.                 for (MessageBox messageB : principal.getMessageBoxes()) {
  111.                     Assert.isTrue(!messageB.getName().equals(
  112.                             messageBox.getName()));
  113.                 }
  114.                 Assert.isTrue(!this.findOne(messageBox.getId())
  115.                         .getIsPredefined());
  116.             }
  117.         }
  118.  
  119.         List<String> atributosAComprobar = new ArrayList<>();
  120.         atributosAComprobar.add(messageBox.getName());
  121.  
  122.         boolean containsSpam = this.utilityService.isSpam(atributosAComprobar);
  123.         if (containsSpam) {
  124.             principal.setIsSuspicious(true);
  125.         }
  126.  
  127.         result = this.messageBoxRepository.saveAndFlush(messageBox);
  128.         Assert.notNull(result);
  129.  
  130.         if (!principal.getMessageBoxes().contains(result))
  131.             principal.getMessageBoxes().add(result);
  132.  
  133.         return result;
  134.  
  135.     }
  136.  
  137.     public void delete(final MessageBox messageBox) {
  138.         Actor principal;
  139.  
  140.         Assert.isTrue(messageBox.getId() != 0);
  141.  
  142.         principal = this.actorService.findByPrincipal();
  143.         Assert.notNull(principal);
  144.  
  145.         Assert.isTrue(!messageBox.getIsPredefined());
  146.         Assert.isTrue(principal.getMessageBoxes().contains(messageBox));
  147.  
  148.         this.messageBoxRepository.delete(messageBox);
  149.         principal.getMessageBoxes().remove(messageBox);
  150.     }
  151.  
  152.     // Other business methods -----------------------------
  153.  
  154.     public Collection<MessageBox> createSystemMessageBoxes() {
  155.         Collection<MessageBox> result;
  156.         Collection<String> names;
  157.         Collection<Message> messages;
  158.         MessageBox saved;
  159.  
  160.         names = new ArrayList<String>();
  161.         names.add("In box");
  162.         names.add("Out box");
  163.         names.add("Spam box");
  164.         names.add("Trash box");
  165.  
  166.         result = new ArrayList<MessageBox>();
  167.         for (final String name : names) {
  168.             final MessageBox messageBox = new MessageBox();
  169.             messageBox.setName(name);
  170.             messageBox.setIsPredefined(true);
  171.             messages = new ArrayList<Message>();
  172.             messageBox.setMessages(messages);
  173.             saved = this.messageBoxRepository.save(messageBox);
  174.             Assert.notNull(saved);
  175.  
  176.             result.add(saved);
  177.         }
  178.  
  179.         return result;
  180.     }
  181.  
  182.     public MessageBox findOutBoxActor(final Actor a) {
  183.         Actor principal;
  184.         MessageBox result;
  185.  
  186.         principal = this.actorService.findByPrincipal();
  187.  
  188.         Assert.notNull(principal);
  189.         Assert.notNull(a);
  190.         Assert.isTrue(a.getId() != 0);
  191.  
  192.         result = this.messageBoxRepository.findOutBoxActorId(a.getId());
  193.         Assert.notNull(result);
  194.  
  195.         return result;
  196.     }
  197.  
  198.     public MessageBox findTrashBoxActor(final Actor a) {
  199.         Actor principal;
  200.         MessageBox result;
  201.  
  202.         principal = this.actorService.findByPrincipal();
  203.         Assert.notNull(principal);
  204.  
  205.         Assert.notNull(a);
  206.         Assert.isTrue(a.getId() != 0);
  207.  
  208.         result = this.messageBoxRepository.findTrashBoxActorId(a.getId());
  209.         Assert.notNull(result);
  210.  
  211.         return result;
  212.  
  213.     }
  214.  
  215.     public MessageBox findInBoxActor(final Actor a) {
  216.         Actor principal;
  217.         MessageBox result;
  218.  
  219.         principal = this.actorService.findByPrincipal();
  220.         Assert.notNull(principal);
  221.  
  222.         Assert.notNull(a);
  223.         Assert.isTrue(a.getId() != 0);
  224.  
  225.         result = this.messageBoxRepository.findInBoxActorId(a.getId());
  226.         Assert.notNull(result);
  227.  
  228.         return result;
  229.     }
  230.  
  231.     public MessageBox findSpamBoxActor(final Actor a) {
  232.         Actor principal;
  233.         MessageBox result;
  234.  
  235.         principal = this.actorService.findByPrincipal();
  236.         Assert.notNull(principal);
  237.  
  238.         Assert.notNull(a);
  239.         Assert.isTrue(a.getId() != 0);
  240.  
  241.         result = this.messageBoxRepository.findSpamBoxActorId(a.getId());
  242.         Assert.notNull(result);
  243.  
  244.         return result;
  245.     }
  246.  
  247.     public Collection<MessageBox> findAllByPrincipal() {
  248.         Collection<MessageBox> result;
  249.         Actor principal;
  250.  
  251.         principal = this.actorService.findByPrincipal();
  252.         Assert.notNull(principal);
  253.  
  254.         result = this.messageBoxRepository
  255.                 .findAllByPrincipal(principal.getId());
  256.         Assert.notNull(result);
  257.         return result;
  258.     }
  259. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement