Interface LocationService<T extends Location>
- Type Parameters:
T- the Location (sub)type
- All Known Implementing Classes:
DefaultLocationService
public interface LocationService<T extends Location>
Handles CRUD operations of
Location. It is able to return Locations in the proximity of the given GPS that
are sorted in terms of distances.-
Method Summary
Modifier and TypeMethodDescriptionbooleandeleteLocation(T location) Delete the given IAddress from the collection of stored addressesgetLocation(String streetName, String streetNumber, String postalCode, String town, String countryCode, boolean geocode) Get temporary, non-persisted locationgetLocationByName(String name) Returns persisted Location by namegetLocationsForPoint(GPS gps, int limitLocationsCount, BaseStoreModel baseStore) Method returns the nearest locations (points of interest) to the given coordinates, in the number adequate to user definition.getLocationsForPostcode(String postalCode, String countryCode, int limitLocationsCount, BaseStoreModel baseStore) Method looks for nearest locations (points of interest) to the place defined by postal code and country.getLocationsForSearch(String searchTerm, String countryCode, int limitLocationsCount, BaseStoreModel baseStore) Method looks for nearby locations (points of interest) in the place defined by search term (that can be postal code or town name) and country.getLocationsForTown(String town, int limitLocationsCount, BaseStoreModel baseStore) Method looks for nearest locations (points of interest) to the place defined by city name.getLocationsNearby(GPS gps, double distance) Get all known addresses which are located in the circle centered in the given gps location and a given radiusgetLocationsNearby(GPS gps, double distance, BaseStoreModel baseStore) Get all known addresses which are located in the circle centered in the given gps location and a given radius, which belong to a given storegetSortedLocationsNearby(GPS gps, double distance, BaseStoreModel baseStore) Returns list of sortedDistanceAwareLocations.booleansaveOrUpdateLocation(T location) Adds a new address or update existing one
-
Method Details
-
getLocationsNearby
Get all known addresses which are located in the circle centered in the given gps location and a given radius- Parameters:
gps- GPS coordinatesdistance- in kilometers- Returns:
- List of addresses
-
getLocationsNearby
Get all known addresses which are located in the circle centered in the given gps location and a given radius, which belong to a given store- Parameters:
gps- GPS coordinatesdistance- in kilometersbaseStore- base store- Returns:
- List of addresses
-
saveOrUpdateLocation
Adds a new address or update existing one- Parameters:
location- GPS coordinates- Returns:
- true if operation was successful
-
deleteLocation
Delete the given IAddress from the collection of stored addresses- Parameters:
location- GPS coordinates- Returns:
- true if address was deleted
-
getLocationByName
Returns persisted Location by name- Parameters:
name- name of location- Returns:
Locationmatched by unique name
-
getLocation
T getLocation(String streetName, String streetNumber, String postalCode, String town, String countryCode, boolean geocode) Get temporary, non-persisted location -
getLocationsForPoint
Method returns the nearest locations (points of interest) to the given coordinates, in the number adequate to user definition. Use when you have got defined coordinates and need only sorted locations nearby, without any map.- Parameters:
gps- coordinates of center pointlimitLocationsCount- number of POIs chosen by userbaseStore- if set, method will return locations bound to the givenBaseStoreModel- Returns:
- list of proper Locations
-
getLocationsForSearch
List<T> getLocationsForSearch(String searchTerm, String countryCode, int limitLocationsCount, BaseStoreModel baseStore) Method looks for nearby locations (points of interest) in the place defined by search term (that can be postal code or town name) and country. Basically it combines two other methods that retrieves locations for town name and postal code.- Parameters:
searchTerm- the search term - can be postal code or town namecountryCode- the country code - country code to look for (valid if given value is postal code)limitLocationsCount- number of locations to returnbaseStore- if set, method will return locations bound to the givenBaseStoreModel- Returns:
- list of found locations
-
getLocationsForPostcode
List<T> getLocationsForPostcode(String postalCode, String countryCode, int limitLocationsCount, BaseStoreModel baseStore) Method looks for nearest locations (points of interest) to the place defined by postal code and country. Number of returned locations is adequate to user definition. Use when you don't need any map, only list of sorted locations is enough.- Parameters:
postalCode- searching condition for locations - postal codecountryCode- searching condition for locations - country codelimitLocationsCount- number of locations to returnbaseStore- if set, method will return locations bound to the givenBaseStoreModel- Returns:
- list of found locations
-
getLocationsForTown
Method looks for nearest locations (points of interest) to the place defined by city name. Number of returned locations is adequate to user definition. Use when you don't need any map, only list of sorted locations is enough.- Parameters:
town- searching condition for locationslimitLocationsCount- number of locations to returnbaseStore- if set, method will return locations bound to the givenBaseStoreModel- Returns:
- list of found locations
-
getSortedLocationsNearby
Returns list of sortedDistanceAwareLocations. Sorting order is ascending - the closest locations come first.- Parameters:
gps- - reference location. Center.distance- - radius in [km]. The returned locations are contained in the square that the circle describes.baseStore- - if set, method will return locations bound to the givenBaseStoreModel- Returns:
- a sorted list of nearby locations
-