Interface LocationSmartMapSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface LocationSmartMapSession extends OsidSession

This session manages queries and sequencing to create "smart" dynamic catalogs. A LocationQuery can be retrieved from this session and mapped to this Map to create a virtual collection of Locations . The locations may be sequenced using the LocationSearchOrder from this session.

This Map has a default query that matches any location and a default search order that specifies no sequencing. The queries may be examined using a LocationQueryInspector . The query may be modified by converting the inspector back to a LocationQuery .

  • Method Details

    • getMapId

      Id getMapId()
      Gets the Map Id associated with this session.
      Returns:
      the Map Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getMap

      Gets the Map associated with this session.
      Returns:
      the map
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • canManageSmartMaps

      boolean canManageSmartMaps()
      Tests if this user can manage smart maps. A return of true does not guarantee successful authorization. A return of false indicates that it is known methods in this session will result in a PERMISSION_DENIED . This is intended as a hint to an application that may opt not to offer operations to unauthorized users.
      Returns:
      false if smart map management is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getLocationQuery

      LocationQuery getLocationQuery()
      Gets a location query.
      Returns:
      the location query
      Compliance:
      mandatory - This method must be implemented.
    • getLocationSearchOrder

      LocationSearchOrder getLocationSearchOrder()
      Gets a location search order.
      Returns:
      the location search order
      Compliance:
      mandatory - This method must be implemented.
    • applyLocationQuery

      void applyLocationQuery(LocationQuery locationQuery) throws OperationFailedException, PermissionDeniedException
      Applies a location query to this map.
      Parameters:
      locationQuery - the location query
      Throws:
      NullArgumentException - locationQuery is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure occurred
      UnsupportedException - locationQuery not of this service
      Compliance:
      mandatory - This method must be implemented.
    • inspecLocationQuery

      Gets a location query inspector for this map.
      Returns:
      the location query inspector
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure occurred
      Compliance:
      mandatory - This method must be implemented.
    • applyLocationSequencing

      void applyLocationSequencing(LocationSearchOrder locationSearchOrder) throws OperationFailedException, PermissionDeniedException
      Applies a location search order to this map.
      Parameters:
      locationSearchOrder - the location search order
      Throws:
      NullArgumentException - locationSearchOrder is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure occurred
      UnsupportedException - locationSearchOrder not of this service
      Compliance:
      mandatory - This method must be implemented.
    • getLocationQueryFromInspector

      LocationQuery getLocationQueryFromInspector(LocationQueryInspector locationQueryInspector)
      Gets a location query from an inspector.
      Parameters:
      locationQueryInspector - a location query inspector
      Returns:
      the location query
      Throws:
      NullArgumentException - locationQueryInspector is null
      UnsupportedException - locationQueryInspector is not of this service
      Compliance:
      mandatory - This method must be implemented.