/** * Copyright (c) 2000-present Liferay, Inc. All rights reserved. * * This library is free software; you can redistribute it and/or modify it under * the terms of the GNU Lesser General Public License as published by the Free * Software Foundation; either version 2.1 of the License, or (at your option) * any later version. * * This library is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more * details. */ package com.liferay.portal.kernel.search; import com.liferay.portal.kernel.search.geolocation.GeoLocationPoint; import java.util.ArrayList; import java.util.Collections; import java.util.List; /** * @author Michael C. Han */ public class GeoDistanceSort extends Sort { public GeoDistanceSort() { setType(GEO_DISTANCE_TYPE); } public void addGeoHash(String geoHash) { _geoHashes.add(geoHash); } public void addGeoHash(String... geoHashes) { Collections.addAll(_geoHashes, geoHashes); } public void addGeoLocationPoint(GeoLocationPoint geoLocationPoint) { _geoLocationPoints.add(geoLocationPoint); } public void addGeoLocationPoints(GeoLocationPoint... geoLocationPoints) { Collections.addAll(_geoLocationPoints, geoLocationPoints); } public List<String> getGeoHashes() { return Collections.unmodifiableList(_geoHashes); } public List<GeoLocationPoint> getGeoLocationPoints() { return Collections.unmodifiableList(_geoLocationPoints); } private final List<String> _geoHashes = new ArrayList<>(); private final List<GeoLocationPoint> _geoLocationPoints = new ArrayList<>(); }