1. package service;
  2. /**
  3.  * @author Julija
  4.  */
  5. import java.util.ArrayList;
  6.  
  7. import model.Alarm;
  8. import model.Location;
  9. import model.Product;
  10. import model.Stack;
  11. import model.Stack.DryState;
  12. import dao.StackDao;
  13.  
  14. public class StackService
  15. {
  16. private static final StackService INSTANCE = new StackService();
  17.  
  18. private StackService()
  19. {
  20. }
  21.  
  22. public static StackService getInstance()
  23. {
  24. return INSTANCE;
  25. }
  26.  
  27. // The stack is found in the Database, selected and marked as complete(i.e.
  28. // ready for packing).
  29. public void complete(int i)
  30. {
  31. Stack stack = StackDao.getAllStacks().get(i);
  32. stack.setComplete(true);
  33. }
  34.  
  35. public void abort(int i)
  36. {
  37. Stack stack = StackDao.getAllStacks().get(i);
  38. stack.setAbort(true);
  39. stack.setDryState(DryState.ABORTED);
  40. }
  41.  
  42. public ArrayList<Stack> getStacks()
  43. {
  44. return StackDao.getAllStacks();
  45. }
  46.  
  47. public void rollDryState(Stack stack)
  48. {
  49. if (stack.getDryState() == DryState.IDEAL) {
  50. stack.setDryState(DryState.TOOLATE);
  51. }
  52. if (stack.getDryState() == DryState.NOTYET) {
  53. stack.setDryState(DryState.IDEAL);
  54. }
  55.  
  56. }
  57.  
  58. public Stack createStack(boolean complete, DryState dryState,
  59. Location location, Alarm alarm, Product product)
  60. {
  61.  
  62. Stack stack = new Stack(complete, dryState, location, alarm, product);
  63.  
  64. StackDao.storeStack(stack);
  65. return stack;
  66. }
  67.  
  68. public void removeStack(Stack stack)
  69. {
  70. StackDao.deleteStack(stack);
  71. }
  72. public void sort(){
  73. StackDao.sort();
  74. }
  75.  
  76. }
  77.