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.