Interface BlockSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface BlockSession extends OsidSession

This is the basic session for checking blocks.

  • isolated oubliette view: All issue methods in this session operate, retrieve and pertain to availabilities defined explicitly in the current oubliette. Using an isolated view is useful for managing Availabilities with the IssueAdminSession .
  • federated oubliette view: All issue lookup methods in this session operate, retrieve and pertain to all availabilities defined in this oubliette and any other availabilities implicitly available in this oubliette through oubliette inheritence.

The methods useFederatedOublietteView() and useIsolatedOublietteView() behave as a radio group and one should be selected before invoking any lookup methods.

  • Method Details

    • getOublietteId

      Id getOublietteId()
      Gets the Oubliette Id associated with this session.
      Returns:
      the Oubliette Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getOubliette

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

      boolean canAccessBlocks()
      Tests if this user can perform Block checks. A return of true does not guarantee successful authorization. A return of false indicates that it is known all methods in this session will result in a PERMISSION_DENIED . This is intended as a hint to an application that may not offer lookup operations to unauthorized users.
      Returns:
      false if block methods are not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • useFederatedOublietteView

      void useFederatedOublietteView()
      Federates the view for methods in this session. A federated view will include availabilities in foundries which are children of this oubliette in the oubliette hierarchy.
      Compliance:
      mandatory - This method is must be implemented.
    • useIsolatedOublietteView

      void useIsolatedOublietteView()
      Isolates the view for methods in this session. An isolated view restricts retrievals to this oubliette only.
      Compliance:
      mandatory - This method is must be implemented.
    • isBlocked

      boolean isBlocked(Id agentId, Id blockId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Determines if the given resource is blocked. A resource is blocked if an active Hold for the given agent exists for an Issue maped to the given Block .
      Parameters:
      agentId - the Id of an Agent
      blockId - the Id of a Block
      Returns:
      true if the user is blocked, false othersise
      Throws:
      NotFoundException - blockId is not found
      NullArgumentException - agentId or blockId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure making request
      Compliance:
      mandatory - This method must be implemented.