Interface SpeedZoneEnablerRuleLookupSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface SpeedZoneEnablerRuleLookupSession extends OsidSession

This session provides methods to retrieve SpeedZoneEnabler to SpeedZone mappings. a SpeedZone with multiple SpeedZoneEnablers means any positive rule evaluation across the enablers result in an effective SpeedZone .

This lookup session defines several views:

  • comparative view: elements may be silently omitted or re-ordered
  • plenary view: provides a complete result set or is an error condition
  • isolated map view: All methods in this session operate, retrieve and pertain speed zone enablers defined explicitly in the current map
  • federated map view: All methods in this session operate, retrieve and pertain to all speed zone enablers defined in this map and any other speed zone enablers implicitly available in this map through map inheritence.
  • 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.
    • canLookupSpeedZoneEnablerRules

      boolean canLookupSpeedZoneEnablerRules()
      Tests if this user can perform lookups of speed zone enabler/speed zone mappings. A return of true does not guarantee successful authorization. A return of false indicates that it is known lookup 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 lookup operations to unauthorized users.
      Returns:
      false if looking up mappings is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • useComparativeSpeedZoneEnablerRuleView

      void useComparativeSpeedZoneEnablerRuleView()
      The returns from the lookup methods may omit or translate elements based on this session, such as authorization, and not result in an error. This view is used when greater interoperability is desired at the expense of precision.
      Compliance:
      mandatory - This method is must be implemented.
    • usePlenarySpeedZoneEnablerRuleView

      void usePlenarySpeedZoneEnablerRuleView()
      A complete view of the SpeedZoneEnabler and SpeedZone returns is desired. Methods will return what is requested or result in an error. This view is used when greater precision is desired at the expense of interoperability.
      Compliance:
      mandatory - This method is must be implemented.
    • useFederatedMapView

      void useFederatedMapView()
      Federates the view for methods in this session. A federated view will include speed zone enablers in maps which are children of this map in the map hierarchy.
      Compliance:
      mandatory - This method is must be implemented.
    • useIsolatedMapView

      void useIsolatedMapView()
      Isolates the view for methods in this session. An isolated view restricts lookups to this map only.
      Compliance:
      mandatory - This method is must be implemented.
    • getSpeedZoneEnablerIdsForSpeedZone

      IdList getSpeedZoneEnablerIdsForSpeedZone(Id speedZoneId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the SpeedZoneEnabler Id associated with a SpeedZone .
      Parameters:
      speedZoneId - Id of the SpeedZone
      Returns:
      the speed zone enabler Ids
      Throws:
      NotFoundException - speedZoneId is not found
      NullArgumentException - speedZoneId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getSpeedZoneEnablersForSpeedZone

      SpeedZoneEnablerList getSpeedZoneEnablersForSpeedZone(Id speedZoneId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the SpeedZoneEnablers associated with a SpeedZone .
      Parameters:
      speedZoneId - Id of the SpeedZone
      Returns:
      the speed zone enablers
      Throws:
      NotFoundException - speedZoneId is not found
      NullArgumentException - speedZoneId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getSpeedZoneIdsForSpeedZoneEnabler

      IdList getSpeedZoneIdsForSpeedZoneEnabler(Id speedZoneEnablerId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the SpeedZone Ids mapped to a SpeedZoneEnabler .
      Parameters:
      speedZoneEnablerId - Id of a SpeedZoneEnabler
      Returns:
      list of speed zone Ids
      Throws:
      NotFoundException - speedZoneEnablerId is not found
      NullArgumentException - speedZoneEnablerId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getSpeedZonesForSpeedZoneEnabler

      SpeedZoneList getSpeedZonesForSpeedZoneEnabler(Id speedZoneEnablerId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the SpeedZones mapped to a SpeedZoneEnabler .
      Parameters:
      speedZoneEnablerId - Id of a SpeedZoneEnabler
      Returns:
      list of speed zones
      Throws:
      NotFoundException - speedZoneEnablerId is not found
      NullArgumentException - speedZoneEnablerId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.