Interface ObstacleEnablerRuleApplicationSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface ObstacleEnablerRuleApplicationSession extends OsidSession

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

  • 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.
    • canAssignObstacleEnablers

      boolean canAssignObstacleEnablers()
      Tests if this user can alter obstacle enabler/obstacle mappings. A return of true does not guarantee successful authorization. A return of false indicates that it is known mapping 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 mapping is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • assignObstacleEnablerToObstacle

      void assignObstacleEnablerToObstacle(Id obstacleEnablerId, Id obstacleId) throws AlreadyExistsException, NotFoundException, OperationFailedException, PermissionDeniedException
      Adds an existing ObstacleEnabler to an Obstacle.
      Parameters:
      obstacleEnablerId - the Id of the ObstacleEnabler
      obstacleId - the Id of the Obstacle
      Throws:
      AlreadyExistsException - obstacleEnablerId is already applied to obstacleId
      NotFoundException - obstacleEnablerId or obstacleId not found
      NullArgumentException - obstacleEnablerId or obstacleId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • unassignObstacleEnablerFromObstacle

      void unassignObstacleEnablerFromObstacle(Id obstacleEnablerId, Id obstacleId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Removes an ObstacleEnabler from an Obstacle.
      Parameters:
      obstacleEnablerId - the Id of the ObstacleEnabler
      obstacleId - the Id of the Obstacle
      Throws:
      NotFoundException - obstacleEnablerId or obstacleId not found or obstacleEnablerId not applied to obstacleId
      NullArgumentException - obstacleEnablerId or obstacleId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • canSequenceObstacleEnablers

      boolean canSequenceObstacleEnablers()
      Tests if this user can order ObstacleEnablers. A return of true does not guarantee successful authorization. A return of false indicates that it is known sequencing operations will result in a PERMISSION_DENIED. This is intended as a hint to an application that may opt not to offer sequencing operations to an unauthorized user.
      Returns:
      false if ObstacleEnabler ordering is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • moveObstacleEnablerAhead

      void moveObstacleEnablerAhead(Id obstacleEnablerId, Id obstacleId, Id referenceId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Reorders obstacle enablers for an obstacle by moving the specified obstacle enabler in front of a reference obstacle enabler.
      Parameters:
      obstacleEnablerId - the Id of an ObstacleEnabler
      obstacleId - the Id of an Obstacle
      referenceId - the reference obstacle enabler Id
      Throws:
      NotFoundException - obstacleEnablerId, obstacleId, or referenceId not found or, obstacleEnablerId or referenceId not related to obstacleId
      NullArgumentException - obstacleEnablerId, obstacleId, or referenceId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • moveObstacleEnablerBehind

      void moveObstacleEnablerBehind(Id obstacleEnablerId, Id obstacleId, Id referenceId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Reorders obstacle enablers for an obstacle by moving the specified obstacle enabler behind a reference obstacle enabler.
      Parameters:
      obstacleEnablerId - the Id of an ObstacleEnabler
      obstacleId - the Id of an Obstacle
      referenceId - the reference obstacle enabler Id
      Throws:
      NotFoundException - obstacleEnablerId, obstacleId, or referenceId not found or, obstacleEnablerId or referenceId not related to obstacleId
      NullArgumentException - obstacleEnablerId, obstacleId, or referenceId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • orderObstacleEnablers

      void orderObstacleEnablers(Id[] obstacleEnablerIds, Id obstacleId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Reorders a set of obstacle enablers for an obstacle.
      Parameters:
      obstacleEnablerIds - the Ids for a set of ObstacleEnablers
      obstacleId - the Id of an Obstacle
      Throws:
      NotFoundException - obstacleId not found or, an obstacleEnablerId not related to obstacleId
      NullArgumentException - obstacleEnabelrIds or obstacleId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.