View Javadoc
1   package fr.ifremer.dali.ui.swing.content.extraction.config.preset;
2   
3   /*
4    * #%L
5    * Dali :: UI
6    * $Id:$
7    * $HeadURL:$
8    * %%
9    * Copyright (C) 2014 - 2015 Ifremer
10   * %%
11   * This program is free software: you can redistribute it and/or modify
12   * it under the terms of the GNU Affero General Public License as published by
13   * the Free Software Foundation, either version 3 of the License, or
14   * (at your option) any later version.
15   * 
16   * This program is distributed in the hope that it will be useful,
17   * but WITHOUT ANY WARRANTY; without even the implied warranty of
18   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
19   * GNU General Public License for more details.
20   * 
21   * You should have received a copy of the GNU Affero General Public License
22   * along with this program.  If not, see <http://www.gnu.org/licenses/>.
23   * #L%
24   */
25  
26  import fr.ifremer.dali.dto.referential.pmfm.PmfmDTO;
27  import fr.ifremer.dali.dto.referential.pmfm.QualitativeValueDTO;
28  import fr.ifremer.dali.dto.system.extraction.PmfmPresetDTO;
29  import fr.ifremer.dali.ui.swing.util.table.AbstractDaliTableUIModel;
30  import org.apache.commons.collections4.CollectionUtils;
31  
32  import java.util.List;
33  
34  /**
35   * Created by Ludovic on 26/05/2015.
36   */
37  public class PmfmPresetUIModel extends AbstractDaliTableUIModel<PmfmPresetDTO, PmfmPresetRowModel, PmfmPresetUIModel> {
38  
39      private List<PmfmDTO> availablePmfms;
40      public static final String PROPERTY_AVAILABLE_PMFMS = "availablePmfms";
41  
42      private List<PmfmPresetDTO> initialPmfmPresets;
43      public static final String PROPERTY_INITIAL_PMFM_PRESETS = "initialPmfmPresets";
44  
45      private List<QualitativeValueDTO> selectedValues;
46      public static final String PROPERTY_SELECTED_VALUES = "selectedValues";
47  
48      private List<PmfmDTO> availableResultPmfms;
49      public static final String PROPERTY_AVAILABLE_RESULT_PMFMS = "availableResultPmfms";
50  
51      private List<PmfmDTO> selectedResultPmfms;
52      public static final String PROPERTY_SELECTED_RESULT_PMFMS = "selectedResultPmfms";
53  
54      private List<PmfmDTO> initialResultPmfms;
55      public static final String PROPERTY_INITIAL_RESULT_PMFMS = "initialResultPmfms";
56  
57      public List<PmfmDTO> getAvailablePmfms() {
58          return availablePmfms;
59      }
60  
61      public void setAvailablePmfms(List<PmfmDTO> availablePmfms) {
62          this.availablePmfms = availablePmfms;
63          firePropertyChange(PROPERTY_AVAILABLE_PMFMS, null, availablePmfms);
64      }
65  
66      public List<PmfmPresetDTO> getInitialPmfmPresets() {
67          return initialPmfmPresets;
68      }
69  
70      public void setInitialPmfmPresets(List<PmfmPresetDTO> initialPmfmPresets) {
71          this.initialPmfmPresets = initialPmfmPresets;
72          firePropertyChange(PROPERTY_INITIAL_PMFM_PRESETS, null, initialPmfmPresets);
73      }
74  
75      public List<QualitativeValueDTO> getSelectedValues() {
76          return selectedValues;
77      }
78  
79      public void setSelectedValues(List<QualitativeValueDTO> selectedValues) {
80          this.selectedValues = selectedValues;
81          firePropertyChange(PROPERTY_SELECTED_VALUES, null, selectedValues);
82      }
83  
84      public List<PmfmDTO> getAvailableResultPmfms() {
85          return availableResultPmfms;
86      }
87  
88      public void setAvailableResultPmfms(List<PmfmDTO> availableResultPmfms) {
89          this.availableResultPmfms = availableResultPmfms;
90          firePropertyChange(PROPERTY_AVAILABLE_RESULT_PMFMS, null, availableResultPmfms);
91      }
92  
93      public List<PmfmDTO> getSelectedResultPmfms() {
94          return selectedResultPmfms;
95      }
96  
97      public void setSelectedResultPmfms(List<PmfmDTO> selectedResultPmfms) {
98          this.selectedResultPmfms = selectedResultPmfms;
99          firePropertyChange(PROPERTY_SELECTED_RESULT_PMFMS, null, selectedResultPmfms);
100     }
101 
102     public List<PmfmDTO> getInitialResultPmfms() {
103         return initialResultPmfms;
104     }
105 
106     public void setInitialResultPmfms(List<PmfmDTO> initialResultPmfms) {
107         this.initialResultPmfms = initialResultPmfms;
108         firePropertyChange(PROPERTY_INITIAL_RESULT_PMFMS, null, initialResultPmfms);
109     }
110 
111     public boolean isPresetValid() {
112         for (PmfmPresetRowModel rowModel : getRows()) {
113             if (CollectionUtils.isNotEmpty(rowModel.getQualitativeValues())) return true;
114         }
115         return false;
116     }
117 
118     public void setPresetValid(boolean presetValid) {
119         // dummy setter
120     }
121 
122     public boolean isResultValid() {
123         return CollectionUtils.isNotEmpty(getSelectedResultPmfms());
124     }
125 
126     public void setResultValid(boolean resultValid) {
127         // dummy setter
128     }
129 
130 }