1 package fr.ifremer.quadrige3.core.dao.administration.user; 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.administration.user.DepartmentVO; 27 28 import java.util.Date; 29 import java.util.List; 30 import java.util.Properties; 31 32 33 /** 34 * <p> 35 * DepartmentJdbcDao interface. 36 * </p> 37 * 38 */ 39 public interface DepartmentJdbcDao { 40 41 /** 42 * Get full data on department (execute against the default datasource) 43 * 44 * @param depId 45 * a int. 46 * @return a {@link fr.ifremer.quadrige3.core.vo.administration.user.DepartmentVO} object. 47 */ 48 DepartmentVO getDepartmentById(int depId); 49 50 /** 51 * Get full data on department, using the given connection 52 * 53 * @param connectionProperties 54 * if null, the default datasource will be used (if exists) 55 * @param depId 56 * a int. 57 * @return a {@link fr.ifremer.quadrige3.core.vo.administration.user.DepartmentVO} object. 58 */ 59 DepartmentVO getDepartmentById(Properties connectionProperties, int depId); 60 61 /** 62 * Get department by ids (execute against the default datasource) 63 * 64 * @param ids 65 * a {@link java.util.List} object. 66 * @return a {@link java.util.List} object. 67 */ 68 List<DepartmentVO> getDepartmentsByIds(List<Integer> ids); 69 70 /** 71 * Get department by ids, using the given connection 72 * 73 * @param connectionProperties 74 * if null, the default datasource will be used (if exists) 75 * @param ids 76 * a {@link java.util.List} object. 77 * @return a {@link java.util.List} object. 78 */ 79 List<DepartmentVO> getDepartmentsByIds(Properties connectionProperties, List<Integer> ids); 80 81 List<Integer> getInheritedRecorderDepartmentIdsFrom(int departmentId, Date date); 82 83 }