1 package fr.ifremer.tutti.service;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 import com.google.common.collect.Lists;
28 import fr.ifremer.tutti.persistence.entities.data.Cruise;
29 import fr.ifremer.tutti.persistence.entities.data.FishingOperation;
30 import fr.ifremer.tutti.persistence.entities.data.Program;
31 import fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocol;
32
33 import java.util.List;
34
35
36
37
38
39
40
41 public class TuttiValidationDataContext extends TuttiValidationDataContextSupport {
42
43 private final TuttiDataContext dataContext;
44
45 public TuttiValidationDataContext(TuttiDataContext dataContext) {
46 this.dataContext = dataContext;
47 }
48
49 @Override
50 protected List<Program> loadExistingPrograms() {
51 dataContext.checkOpened();
52 List<Program> existingPrograms = Lists.newArrayList(dataContext.service.getAllProgram());
53
54 if (dataContext.isProgramFilled()) {
55
56
57 existingPrograms.remove(getProgram());
58 }
59
60 return existingPrograms;
61 }
62
63 @Override
64 protected List<TuttiProtocol> loadExistingProtocols() {
65 dataContext.checkOpened();
66 List<TuttiProtocol> existingProtocols = Lists.newArrayList(dataContext.service.getAllProtocol());
67
68 if (dataContext.isProtocolFilled()) {
69
70
71 existingProtocols.remove(getProtocol());
72 }
73
74 return existingProtocols;
75 }
76
77 @Override
78 protected List<FishingOperation> loadExistingFishingOperations() {
79 dataContext.checkOpened();
80 List<FishingOperation> existingFishingOperations = Lists.newArrayList(dataContext.service.getAllFishingOperation(dataContext.getCruiseId()));
81
82 if (dataContext.isFishingOperationFilled()) {
83
84
85 existingFishingOperations.remove(getFishingOperation());
86 }
87
88 return existingFishingOperations;
89 }
90
91 @Override
92 protected Program getProgram() {
93 return dataContext.getProgram();
94 }
95
96 @Override
97 protected Cruise getCruise() {
98 return dataContext.getCruise();
99 }
100
101 @Override
102 protected TuttiProtocol getProtocol() {
103 return dataContext.getProtocol();
104 }
105
106 @Override
107 protected FishingOperation getFishingOperation() {
108 return dataContext.getFishingOperation();
109 }
110
111 }