1 package fr.ifremer.dali.ui.swing.content.observation.operation.measurement.ungrouped;
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 import com.google.common.collect.Lists;
27 import fr.ifremer.dali.dto.data.measurement.MeasurementDTO;
28 import fr.ifremer.dali.dto.data.sampling.SamplingOperationDTO;
29 import fr.ifremer.dali.ui.swing.content.observation.ObservationUIModel;
30 import fr.ifremer.dali.ui.swing.util.table.AbstractDaliTableUIModel;
31
32 import java.util.List;
33
34
35
36
37 public class OperationMeasurementsUngroupedTableUIModel extends AbstractDaliTableUIModel<SamplingOperationDTO, OperationMeasurementsUngroupedRowModel, OperationMeasurementsUngroupedTableUIModel> {
38
39
40 public static final String PROPERTY_SURVEY = "survey";
41
42 public static final String PROPERTY_SAMPLING_FILTER = "samplingFilter";
43 private ObservationUIModel survey;
44 private SamplingOperationDTO samplingFilter;
45
46
47
48
49 public OperationMeasurementsUngroupedTableUIModel() {
50 super();
51 }
52
53
54
55
56
57
58 public ObservationUIModel getSurvey() {
59 return survey;
60 }
61
62
63
64
65
66
67 public void setSurvey(ObservationUIModel survey) {
68 this.survey = survey;
69 firePropertyChange(PROPERTY_SURVEY, null, survey);
70 }
71
72
73
74
75
76
77 public List<SamplingOperationDTO> getSamplingOperations() {
78 return survey == null ? null : (List<SamplingOperationDTO>) survey.getSamplingOperations();
79 }
80
81
82
83
84
85
86 public SamplingOperationDTO getSamplingFilter() {
87 return samplingFilter;
88 }
89
90
91
92
93
94
95 public void setSamplingFilter(SamplingOperationDTO samplingFilter) {
96 Object oldFilter = getSamplingFilter();
97 this.samplingFilter = samplingFilter;
98 firePropertyChange(PROPERTY_SAMPLING_FILTER, oldFilter, samplingFilter);
99 }
100
101
102
103
104
105
106 public List<MeasurementDTO> getAllMeasurements() {
107 List<MeasurementDTO> measurements = Lists.newArrayList();
108 if (getSamplingOperations() != null) {
109 for (SamplingOperationDTO samplingOperation : getSamplingOperations()) {
110 measurements.addAll(samplingOperation.getMeasurements());
111 }
112 }
113 return measurements;
114 }
115 }