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 }