Interface PoolConstrainerRuleApplicationSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface PoolConstrainerRuleApplicationSession extends OsidSession

This session provides methods to apply PoolConstrainers to Pools. Multiple PoolConstrainers applied to an Pool may be sequenced such that the first positive evaluation results in the PoolConstrainer used.

  • Method Details

    • getDistributorId

      Id getDistributorId()
      Gets the Distributor Id associated with this session.
      Returns:
      the Distributor Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getDistributor

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

      boolean canAssignPoolConstrainers()
      Tests if this user can alter pool constrainer/pool 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.
    • assignPoolConstrainerToPool

      void assignPoolConstrainerToPool(Id poolConstrainerId, Id poolId) throws AlreadyExistsException, NotFoundException, OperationFailedException, PermissionDeniedException
      Adds an existing PoolConstrainer to a Pool.
      Parameters:
      poolConstrainerId - the Id of the PoolConstrainer
      poolId - the Id of the Pool
      Throws:
      AlreadyExistsException - poolConstrainerId already applied to poolId
      NotFoundException - poolConstrainerId or poolId not found
      NullArgumentException - poolConstrainerId or poolId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • unassignPoolConstrainerFromPool

      void unassignPoolConstrainerFromPool(Id poolConstrainerId, Id poolId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Removes an existing PoolConstrainer from a Pool.
      Parameters:
      poolConstrainerId - the Id of the PoolConstrainer
      poolId - the Id of the Pool
      Throws:
      NotFoundException - poolConstrainerId or poolId not found or poolConstrainerId already applied to poolId
      NullArgumentException - poolConstrainerId or poolId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • canSequencePoolConstrainers

      boolean canSequencePoolConstrainers()
      Tests if this user can order PoolConstrainers. 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 PoolConstrainer ordering is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • movePoolConstrainerAhead

      void movePoolConstrainerAhead(Id poolConstrainerId, Id poolId, Id referenceId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Reorders pool constrainers for a pool by moving the specified pool constrainer in front of a reference pool constrainer.
      Parameters:
      poolConstrainerId - the Id of the PoolConstrainer
      poolId - the Id of the Pool
      referenceId - the reference pool constrainer Id
      Throws:
      NotFoundException - poolConstrainerId, poolId, or referenceId not found or, poolConstrainerId or referenceId not related to poolId
      NullArgumentException - poolConstrainerId, poolId, or referenceId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • movePoolConstrainerBehind

      void movePoolConstrainerBehind(Id poolConstrainerId, Id poolId, Id referenceId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Reorders pool constrainers for a pool by moving the specified pool constrainer behind a reference pool constrainer.
      Parameters:
      poolConstrainerId - the Id of the PoolConstrainer
      poolId - the Id of the Pool
      referenceId - the reference pool constrainer Id
      Throws:
      NotFoundException - poolConstrainerId, poolId, or referenceId not found or, poolConstrainerId or referenceId not related to poolId
      NullArgumentException - poolConstrainerId, poolId, or referenceId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • orderPoolConstrainers

      void orderPoolConstrainers(Id[] poolConstrainerIds, Id poolId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Reorders a set of pool constrainers for a pool.
      Parameters:
      poolConstrainerIds - the Ids for a set of PoolConstrainers
      poolId - the Id of the Pool
      Throws:
      NotFoundException - poolId not found or, a poolConstrainerId not related to poolId
      NullArgumentException - poolConstrainerIds or poolId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.