-
- All Implemented Interfaces:
-
com.pointrlabs.core.management.interfaces.Advertiser
public interface PoiManager implements Advertiser<PoiManager.Listener>
Main class responsible for POI related search and access.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description public interface
PoiManager.Listener
-
Method Summary
Modifier and Type Method Description abstract Boolean
hasContentForSite(Site site)
Checks whether the Poi content is present & ready for the given site abstract PoiContainer
getPois(Site site)
Returns all Poi objects. abstract PoiContainer
getPois(Site site, List<String> types)
Returns all Poi objects. abstract PoiContainer
getPois(Site site, List<String> types, Boolean shouldSortByProximity)
Returns all Poi objects. abstract PoiContainer
getPois(Building building)
Returns all Poi objects. abstract PoiContainer
getPois(Building building, List<String> types)
Returns all Poi objects. abstract PoiContainer
getPois(Building building, List<String> types, Boolean shouldSortByProximity)
Returns all Poi objects. abstract List<Poi>
getPois(Site site, Building buildingInFocus, PoiCategory poiCategory)
Returns all poi objects that are included in the types designated for the given poi category The sorting mechanism is as below; If there is a valid indoor position, the pois in the physical building are sorted by proximity and appended at the beginning of the resulting list If there is a valid focused building, the pois in the focused building are appended to the resulting list without proximity sort Then the pois from the remaining buildings are appended. abstract PoiContainer
getPois(Level level)
Returns all Poi objects. abstract PoiContainer
getPois(Level level, List<String> types)
Returns all Poi objects. abstract PoiContainer
getPois(Level level, List<String> types, Boolean shouldSortByProximity)
Returns all Poi objects. abstract PoiContainer
getPoisWithName(Site site, String name)
Get the poi with name in site abstract PoiContainer
getPoisWithName(Building building, String name)
Get the poi with name in site abstract PoiContainer
getPoisWithName(Level level, String name)
Get the poi with name in site abstract Poi
getPoiByIdentifier(Site site, String poiIdentifier)
Retrieves poi with poiIdentifier if present. abstract Poi
getPoiByExternalIdentifier(Site site, String poiExternalIdentifier)
Retrieves poi with poiExternalIdentifier if present. abstract PoiContainer
searchPois(Site site, String searchString)
Search poi in site with a string abstract PoiContainer
searchPois(Site site, String searchString, List<String> types)
Search poi in site with a string abstract PoiContainer
searchPois(Building building, String searchString)
Search poi in site with a string abstract PoiContainer
searchPois(Building building, String searchString, List<String> types)
Search poi in site with a string abstract List<String>
getAllPoiTypes(Site site)
Get a list of all types in site abstract List<PoiCategory>
getCategories()
abstract List<PoiCategory>
getCategories(Building building)
abstract Poi
getFarthestPoi(LocationAware locationAware)
Get the Poi farthests from location at the same level -
-
Method Detail
-
hasContentForSite
abstract Boolean hasContentForSite(Site site)
Checks whether the Poi content is present & ready for the given site
-
getPois
abstract PoiContainer getPois(Site site)
Returns all Poi objects. Sorted alphabetically ignoring case by title. Note there might be multiple Poi objects with same title.
- Parameters:
site
- to get pois for
-
getPois
abstract PoiContainer getPois(Site site, List<String> types)
Returns all Poi objects. Sorted alphabetically ignoring case by title. Note there might be multiple Poi objects with same title.
- Parameters:
site
- to get pois fortypes
- a list of types to filter the pois.
-
getPois
abstract PoiContainer getPois(Site site, List<String> types, Boolean shouldSortByProximity)
Returns all Poi objects. Sorted by proximity.
- Parameters:
site
- to get pois fortypes
- a list of types to filter the pois.shouldSortByProximity
- enables/disables sorting by proximity to the current location.
-
getPois
abstract PoiContainer getPois(Building building)
Returns all Poi objects. Sorted alphabetically ignoring case by title. Note there might be multiple Poi objects with same title.
- Parameters:
building
- to get pois for
-
getPois
abstract PoiContainer getPois(Building building, List<String> types)
Returns all Poi objects. Sorted alphabetically ignoring case by title. Note there might be multiple Poi objects with same title.
- Parameters:
building
- to get pois fortypes
- a list of types to filter the pois.
-
getPois
abstract PoiContainer getPois(Building building, List<String> types, Boolean shouldSortByProximity)
Returns all Poi objects. Sorted by proximity.
- Parameters:
building
- to get pois fortypes
- a list of types to filter the pois.shouldSortByProximity
- enables/disables sorting by proximity to the current location.
-
getPois
abstract List<Poi> getPois(Site site, Building buildingInFocus, PoiCategory poiCategory)
Returns all poi objects that are included in the types designated for the given poi category The sorting mechanism is as below; If there is a valid indoor position, the pois in the physical building are sorted by proximity and appended at the beginning of the resulting list If there is a valid focused building, the pois in the focused building are appended to the resulting list without proximity sort Then the pois from the remaining buildings are appended.
- Parameters:
site
- The site that the user is viewing in MapWidget.buildingInFocus
- The building that the user is viewing in MapWidget.poiCategory
- The poi category that will be used to filter the pois
-
getPois
abstract PoiContainer getPois(Level level)
Returns all Poi objects. Sorted alphabetically ignoring case by title. Note there might be multiple Poi objects with same title.
- Parameters:
level
- to get pois for
-
getPois
abstract PoiContainer getPois(Level level, List<String> types)
Returns all Poi objects. Sorted alphabetically ignoring case by title. Note there might be multiple Poi objects with same title.
- Parameters:
level
- to get pois fortypes
- a list of types to filter the pois.
-
getPois
abstract PoiContainer getPois(Level level, List<String> types, Boolean shouldSortByProximity)
Returns all Poi objects. Sorted by proximity.
- Parameters:
level
- to get pois fortypes
- a list of types to filter the pois.shouldSortByProximity
- enables/disables sorting by proximity to the current location.
-
getPoisWithName
abstract PoiContainer getPoisWithName(Site site, String name)
Get the poi with name in site
- Parameters:
site
- the site of the poiname
- the name of the poi
-
getPoisWithName
abstract PoiContainer getPoisWithName(Building building, String name)
Get the poi with name in site
- Parameters:
building
- the building of the poiname
- the name of the poi
-
getPoisWithName
abstract PoiContainer getPoisWithName(Level level, String name)
Get the poi with name in site
- Parameters:
level
- the level of the poiname
- the name of the poi
-
getPoiByIdentifier
abstract Poi getPoiByIdentifier(Site site, String poiIdentifier)
Retrieves poi with poiIdentifier if present.
- Parameters:
site
- of the requested poi to query Poi
-
getPoiByExternalIdentifier
abstract Poi getPoiByExternalIdentifier(Site site, String poiExternalIdentifier)
Retrieves poi with poiExternalIdentifier if present.
- Parameters:
site
- of the requested poi to query PoipoiExternalIdentifier
- external identifier of poi
-
searchPois
abstract PoiContainer searchPois(Site site, String searchString)
Search poi in site with a string
- Parameters:
site
- the site to search insearchString
- the query string
-
searchPois
abstract PoiContainer searchPois(Site site, String searchString, List<String> types)
Search poi in site with a string
- Parameters:
site
- the site to search insearchString
- the query stringtypes
- only search for pois with this types
-
searchPois
abstract PoiContainer searchPois(Building building, String searchString)
Search poi in site with a string
- Parameters:
building
- the building to search insearchString
- the query string
-
searchPois
abstract PoiContainer searchPois(Building building, String searchString, List<String> types)
Search poi in site with a string
- Parameters:
building
- the building to search insearchString
- the query stringtypes
- only search for pois with this types
-
getAllPoiTypes
abstract List<String> getAllPoiTypes(Site site)
Get a list of all types in site
- Parameters:
site
- the site
-
getCategories
abstract List<PoiCategory> getCategories()
-
getCategories
abstract List<PoiCategory> getCategories(Building building)
-
getFarthestPoi
abstract Poi getFarthestPoi(LocationAware locationAware)
Get the Poi farthests from location at the same level
- Parameters:
locationAware
- : the location to use as a reference
-
-
-
-