1 package net.sumaris.core.service.referential.location; 2 3 /* 4 * #%L 5 * SIH-Adagio Core Shared 6 * $Id$ 7 * $HeadURL$ 8 * %% 9 * Copyright (C) 2012 - 2013 Ifremer 10 * %% 11 * This program is free software: you can redistribute it and/or modify 12 * it under the terms of the GNU General Public License as 13 * published by the Free Software Foundation, either version 3 of the 14 * License, or (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 General Public 22 * License along with this program. If not, see 23 * <http://www.gnu.org/licenses/gpl-3.0.html>. 24 * #L% 25 */ 26 27 import org.springframework.transaction.annotation.Transactional; 28 29 /** 30 * Service used to access locations 31 * 32 * @author Benoit Lavenier 33 */ 34 @Transactional(readOnly = true) 35 public interface LocationByPositionService { 36 37 /** 38 * Return location label from a longitude and a latitude (in decimal degrees - WG84). 39 * 40 * @param latitude a latitude (in decimal degrees - WG84) 41 * @param longitude a longitude (in decimal degrees - WG84) 42 * @return A location label (corresponding to a statistical rectangle), or null if no statistical rectangle exists for this position 43 */ 44 String getLocationLabelByLatLong(Number latitude, Number longitude); 45 46 /** 47 * Return a location Id, from a longitude and a latitude (in decimal degrees - WG84). 48 * This method typically use getLocationLabelByLatLong(). 49 * 50 * @param latitude a latitude (in decimal degrees - WG84) 51 * @param longitude a longitude (in decimal degrees - WG84) 52 * @return A location Id (corresponding to a statistical rectangle), or null if no statistical rectangle exists for this position 53 */ 54 Integer getLocationIdByLatLong(Number latitude, Number longitude); 55 }