1 package fr.ifremer.dali.dao.referential.pmfm; 2 3 /* 4 * #%L 5 * Dali :: Core 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.MatrixDTO; 27 import org.springframework.cache.annotation.Cacheable; 28 29 import java.util.List; 30 31 /** 32 * Created by Ludovic on 29/07/2015. 33 */ 34 public interface DaliMatrixDao { 35 36 /** Constant <code>ALL_MATRICES_CACHE="allMatrices"</code> */ 37 String ALL_MATRICES_CACHE = "all_matrices"; 38 /** Constant <code>MATRIX_BY_ID_CACHE="matrixById"</code> */ 39 String MATRIX_BY_ID_CACHE = "matrix_by_id"; 40 41 /** 42 * <p>getAllMatrices.</p> 43 * 44 * @param statusCodes a {@link java.util.List} object. 45 * @return a {@link java.util.List} object. 46 */ 47 @Cacheable(value = ALL_MATRICES_CACHE) 48 List<MatrixDTO> getAllMatrices(List<String> statusCodes); 49 50 /** 51 * <p>getMatrixById.</p> 52 * 53 * @param matrixId a int. 54 * @return a {@link fr.ifremer.dali.dto.referential.pmfm.MatrixDTO} object. 55 */ 56 @Cacheable(value = MATRIX_BY_ID_CACHE) 57 MatrixDTO getMatrixById(int matrixId); 58 59 /** 60 * <p>findMatrices.</p> 61 * 62 * @param matrixId a {@link java.lang.Integer} object. 63 * @param statusCodes a {@link java.util.List} object. 64 * @return a {@link java.util.List} object. 65 */ 66 List<MatrixDTO> findMatrices(Integer matrixId, List<String> statusCodes); 67 68 }