Interface ObstacleEnablerRuleLookupSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface ObstacleEnablerRuleLookupSession extends OsidSession

This session provides methods to retrieve ObstacleEnabler to Obstacle mappings. An Obstacle with multiple ObstacleEnablers means any positive rule evaluation across the enablers result in an enabled Obstacle .

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 obstacle enabler defined explicitly in the current map
  • federated map view: All methods in this session operate, retrieve and pertain to all obstacle enabler defined in this map and any other obstacle enabler 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.
    • canLookupObstacleEnablerRules

      boolean canLookupObstacleEnablerRules()
      Tests if this user can perform lookups of obstacle enabler/obstacle 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.
    • useComparativeObstacleEnablerRuleView

      void useComparativeObstacleEnablerRuleView()
      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.
    • usePlenaryObstacleEnablerRuleView

      void usePlenaryObstacleEnablerRuleView()
      A complete view of the ObstacleEnabler and Obstacle 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 obstacle enabler 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.
    • getObstacleEnablerIdsForObstacle

      IdList getObstacleEnablerIdsForObstacle(Id obstacleId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the ObstacleEnabler Id associated with an Obstacle .
      Parameters:
      obstacleId - Id of the Obstacle
      Returns:
      the obstacle enabler Ids
      Throws:
      NotFoundException - obstacleId is not found
      NullArgumentException - obstacleId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getObstacleEnablersForObstacle

      ObstacleEnablerList getObstacleEnablersForObstacle(Id obstacleId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the ObstacleEnabler associated with an Obstacle .
      Parameters:
      obstacleId - Id of the Obstacle
      Returns:
      the obstacle enablers
      Throws:
      NotFoundException - obstacleId is not found
      NullArgumentException - obstacleId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getObstacleIdsForObstacleEnabler

      IdList getObstacleIdsForObstacleEnabler(Id obstacleEnablerId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the Obstacle Ids mapped to an ObstacleEnabler .
      Parameters:
      obstacleEnablerId - Id of an ObstacleEnabler
      Returns:
      list of obstacle Ids
      Throws:
      NotFoundException - obstacleEnablerId is not found
      NullArgumentException - obstacleEnablerId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getObstaclesForObstacleEnabler

      ObstacleList getObstaclesForObstacleEnabler(Id obstacleEnablerId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the Obstacles mapped to an ObstacleEnabler .
      Parameters:
      obstacleEnablerId - Id of an ObstacleEnabler
      Returns:
      list of obstacles
      Throws:
      NotFoundException - obstacleEnablerId is not found
      NullArgumentException - obstacleEnablerId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.