View Javadoc
1   package fr.ifremer.quadrige3.core.dao.referential;
2   
3   /*-
4    * #%L
5    * Quadrige3 Core :: Quadrige3 Client Core
6    * $Id:$
7    * $HeadURL:$
8    * %%
9    * Copyright (C) 2017 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.quadrige3.core.vo.referential.AnalysisInstrumentVO;
27  import fr.ifremer.quadrige3.core.vo.referential.SamplingEquipmentVO;
28  import fr.ifremer.quadrige3.core.vo.referential.monitoringLocation.MonitoringLocationVO;
29  import fr.ifremer.quadrige3.core.vo.referential.pmfm.*;
30  import fr.ifremer.quadrige3.core.vo.referential.taxon.TaxonGroupVO;
31  import fr.ifremer.quadrige3.core.vo.referential.taxon.TaxonNameVO;
32  
33  import java.util.List;
34  
35  /**
36   * Created by blavenie on 31/08/15.
37   */
38  public interface ReferentialJdbcDao {
39  
40  	/**
41  	 * <p>
42  	 * getMonitoringLocationsByIds.
43  	 * </p>
44  	 * 
45  	 * @param ids
46  	 *            a {@link java.util.List} object.
47  	 * @return a {@link java.util.List} object.
48  	 */
49  	List<MonitoringLocationVO> getMonitoringLocationsByIds(List<Integer> ids);
50  
51  	/**
52  	 * <p>
53  	 * getMonitoringLocationById.
54  	 * </p>
55  	 * 
56  	 * @param id
57  	 *            a int.
58  	 * @return a {@link fr.ifremer.quadrige3.core.vo.referential.monitoringLocation.MonitoringLocationVO} object.
59  	 */
60  	MonitoringLocationVO getMonitoringLocationById(int id);
61  
62  	/**
63  	 * <p>
64  	 * getTaxonNamesByReferenceTaxonIds.
65  	 * </p>
66  	 * 
67  	 * @param ids
68  	 *            a {@link java.util.List} object.
69  	 * @return a {@link java.util.List} object.
70  	 */
71  	List<TaxonNameVO> getTaxonNamesByReferenceTaxonIds(List<Integer> ids);
72  
73  	/**
74  	 * <p>
75  	 * getTaxonNameByReferenceTaxonId.
76  	 * </p>
77  	 * 
78  	 * @param id
79  	 *            a int.
80  	 * @return a {@link fr.ifremer.quadrige3.core.vo.referential.taxon.TaxonNameVO} object.
81  	 */
82  	TaxonNameVO getTaxonNameByReferenceTaxonId(int id);
83  
84  	/**
85  	 * <p>
86  	 * getTaxonGroupsByIds.
87  	 * </p>
88  	 * 
89  	 * @param ids
90  	 *            a {@link java.util.List} object.
91  	 * @return a {@link java.util.List} object.
92  	 */
93  	List<TaxonGroupVO> getTaxonGroupsByIds(List<Integer> ids);
94  
95  	/**
96  	 * <p>
97  	 * getTaxonGroupById.
98  	 * </p>
99  	 * 
100 	 * @param id
101 	 *            a int.
102 	 * @return a {@link fr.ifremer.quadrige3.core.vo.referential.taxon.TaxonGroupVO} object.
103 	 */
104 	TaxonGroupVO getTaxonGroupById(int id);
105 
106 	/**
107 	 * <p>
108 	 * getParametersByCodes.
109 	 * </p>
110 	 * 
111 	 * @param codes
112 	 *            a {@link java.util.List} object.
113 	 * @return a {@link java.util.List} object.
114 	 */
115 	List<ParameterVO> getParametersByCodes(List<String> codes);
116 
117 	/**
118 	 * <p>
119 	 * getParameterByCode.
120 	 * </p>
121 	 * 
122 	 * @param code
123 	 *            a {@link java.lang.String} object.
124 	 * @return a {@link fr.ifremer.quadrige3.core.vo.referential.pmfm.ParameterVO} object.
125 	 */
126 	ParameterVO getParameterByCode(String code);
127 
128 	/**
129 	 * <p>
130 	 * getMatrixesByIds.
131 	 * </p>
132 	 * 
133 	 * @param ids
134 	 *            a {@link java.util.List} object.
135 	 * @return a {@link java.util.List} object.
136 	 */
137 	List<MatrixVO> getMatrixesByIds(List<Integer> ids);
138 
139 	/**
140 	 * <p>
141 	 * getMatrixById.
142 	 * </p>
143 	 * 
144 	 * @param id
145 	 *            a int.
146 	 * @return a {@link fr.ifremer.quadrige3.core.vo.referential.pmfm.MatrixVO} object.
147 	 */
148 	MatrixVO getMatrixById(int id);
149 
150 	/**
151 	 * <p>
152 	 * getFractionsByIds.
153 	 * </p>
154 	 * 
155 	 * @param ids
156 	 *            a {@link java.util.List} object.
157 	 * @return a {@link java.util.List} object.
158 	 */
159 	List<FractionVO> getFractionsByIds(List<Integer> ids);
160 
161 	/**
162 	 * <p>
163 	 * getFractionById.
164 	 * </p>
165 	 * 
166 	 * @param id
167 	 *            a int.
168 	 * @return a {@link fr.ifremer.quadrige3.core.vo.referential.pmfm.FractionVO} object.
169 	 */
170 	FractionVO getFractionById(int id);
171 
172 	/**
173 	 * <p>
174 	 * getMethodsByIds.
175 	 * </p>
176 	 * 
177 	 * @param ids
178 	 *            a {@link java.util.List} object.
179 	 * @return a {@link java.util.List} object.
180 	 */
181 	List<MethodVO> getMethodsByIds(List<Integer> ids);
182 
183 	/**
184 	 * <p>
185 	 * getMethodById.
186 	 * </p>
187 	 * 
188 	 * @param id
189 	 *            a int.
190 	 * @return a {@link fr.ifremer.quadrige3.core.vo.referential.pmfm.MethodVO} object.
191 	 */
192 	MethodVO getMethodById(int id);
193 
194 	/**
195 	 * <p>
196 	 * getPmfmsByIds.
197 	 * </p>
198 	 * 
199 	 * @param ids
200 	 *            a {@link java.util.List} object.
201 	 * @return a {@link java.util.List} object.
202 	 */
203 	List<PmfmVO> getPmfmsByIds(List<Integer> ids);
204 
205 	/**
206 	 * <p>
207 	 * getPmfmById.
208 	 * </p>
209 	 * 
210 	 * @param id
211 	 *            a int.
212 	 * @return a {@link fr.ifremer.quadrige3.core.vo.referential.pmfm.PmfmVO} object.
213 	 */
214 	PmfmVO getPmfmById(int id);
215 
216 	/**
217 	 * <p>
218 	 * getUnitsByIds.
219 	 * </p>
220 	 * 
221 	 * @param ids
222 	 *            a {@link java.util.List} object.
223 	 * @return a {@link java.util.List} object.
224 	 */
225 	List<UnitVO> getUnitsByIds(List<Integer> ids);
226 
227 	/**
228 	 * <p>
229 	 * getUnitById.
230 	 * </p>
231 	 * 
232 	 * @param id
233 	 *            a int.
234 	 * @return a {@link fr.ifremer.quadrige3.core.vo.referential.pmfm.UnitVO} object.
235 	 */
236 	UnitVO getUnitById(int id);
237 
238 	/**
239 	 * <p>
240 	 * getAnalysisInstrumentsByIds.
241 	 * </p>
242 	 * 
243 	 * @param ids
244 	 *            a {@link java.util.List} object.
245 	 * @return a {@link java.util.List} object.
246 	 */
247 	List<AnalysisInstrumentVO> getAnalysisInstrumentsByIds(List<Integer> ids);
248 
249 	/**
250 	 * <p>
251 	 * getAnalysisInstrumentById.
252 	 * </p>
253 	 * 
254 	 * @param id
255 	 *            a int.
256 	 * @return a {@link fr.ifremer.quadrige3.core.vo.referential.AnalysisInstrumentVO} object.
257 	 */
258 	AnalysisInstrumentVO getAnalysisInstrumentById(int id);
259 
260 	/**
261 	 * <p>
262 	 * getSamplingEquipmentsByIds.
263 	 * </p>
264 	 * 
265 	 * @param ids
266 	 *            a {@link java.util.List} object.
267 	 * @return a {@link java.util.List} object.
268 	 */
269 	List<SamplingEquipmentVO> getSamplingEquipmentsByIds(List<Integer> ids);
270 
271 	/**
272 	 * <p>
273 	 * getSamplingEquipmentById.
274 	 * </p>
275 	 * 
276 	 * @param id
277 	 *            a int.
278 	 * @return a {@link fr.ifremer.quadrige3.core.vo.referential.SamplingEquipmentVO} object.
279 	 */
280 	SamplingEquipmentVO getSamplingEquipmentById(int id);
281 
282 	/**
283 	 * <p>
284 	 * getQualitativeValueByIds.
285 	 * </p>
286 	 * 
287 	 * @param ids
288 	 *            a {@link java.util.List} object.
289 	 * @return a {@link java.util.List} object.
290 	 */
291 	List<QualitativeValueVO> getQualitativeValueByIds(List<Integer> ids);
292 
293 	/**
294 	 * <p>
295 	 * getQualitativeValueById.
296 	 * </p>
297 	 * 
298 	 * @param id
299 	 *            a int.
300 	 * @return a {@link fr.ifremer.quadrige3.core.vo.referential.pmfm.QualitativeValueVO} object.
301 	 */
302 	QualitativeValueVO getQualitativeValueById(int id);
303 
304 	/**
305 	 * <p>
306 	 * getVOsByTableNameAndPks.
307 	 * </p>
308 	 * 
309 	 * @param tableName
310 	 *            a {@link java.lang.String} object.
311 	 * @param pks
312 	 *            a {@link java.util.List} object.
313 	 * @return a {@link java.util.List} object.
314 	 */
315 	List<?> getVOsByTableNameAndPks(String tableName, List<String> pks);
316 
317 	/**
318 	 * <p>
319 	 * getVOByTableNameAndPk.
320 	 * </p>
321 	 * 
322 	 * @param tableName
323 	 *            a {@link java.lang.String} object.
324 	 * @param pk
325 	 *            a {@link java.lang.String} object.
326 	 * @return a {@link java.lang.Object} object.
327 	 */
328 	Object getVOByTableNameAndPk(String tableName, String pk);
329 
330 }