Interface ProvisionableDistributorSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface ProvisionableDistributorSession extends OsidSession

This session provides methods to retrieve Provisionable to Distributor provisionables. A Provisionable may appear in multiple Distributor objects. Each distributor may have its own authorizations governing who is allowed to look at it.

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
  • Method Details

    • canLookupProvisionableDistributorProvisionables

      boolean canLookupProvisionableDistributorProvisionables()
      Tests if this user can perform lookups of provisionable/distributor 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 provisionables is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • useComparativeProvisionableDistributorView

      void useComparativeProvisionableDistributorView()
      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.
    • usePlenaryProvisionableDistributorView

      void usePlenaryProvisionableDistributorView()
      A complete view of the Provisionable and Distributor 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.
    • getProvisionableIdsByDistributor

      IdList getProvisionableIdsByDistributor(Id distributorId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the list of Provisionable Ids associated with a Distributor .
      Parameters:
      distributorId - Id of the Distributor
      Returns:
      list of related provisionable Ids
      Throws:
      NotFoundException - distributorId is not found
      NullArgumentException - distributorId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getProvisionablesByDistributor

      ProvisionableList getProvisionablesByDistributor(Id distributorId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the list of Provisionables associated with a Distributor .
      Parameters:
      distributorId - Id of the Distributor
      Returns:
      list of related provisionables
      Throws:
      NotFoundException - distributorId is not found
      NullArgumentException - distributorId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getProvisionableIdsByDistributors

      IdList getProvisionableIdsByDistributors(IdList distributorIds) throws OperationFailedException, PermissionDeniedException
      Gets the list of Provisionable Ids corresponding to a list of Distributors .
      Parameters:
      distributorIds - list of distributor Ids
      Returns:
      list of provisionable Ids
      Throws:
      NullArgumentException - distributorIds is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getProvisionablesByDistributors

      ProvisionableList getProvisionablesByDistributors(IdList distributorIds) throws OperationFailedException, PermissionDeniedException
      Gets the list of Provisionables corresponding to a list of Distributors .
      Parameters:
      distributorIds - list of distributor Ids
      Returns:
      list of provisionables
      Throws:
      NullArgumentException - distributorIds is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getDistributorIdsByProvisionable

      IdList getDistributorIdsByProvisionable(Id provisionableId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the Distributor Ids mapped to a Provisionable .
      Parameters:
      provisionableId - Id of a Provisionable
      Returns:
      list of distributors
      Throws:
      NotFoundException - provisionableId is not found
      NullArgumentException - provisionableId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getDistributorsByProvisionable

      DistributorList getDistributorsByProvisionable(Id provisionableId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the Distributors mapped to a Provisionable .
      Parameters:
      provisionableId - Id of a Provisionable
      Returns:
      list of distributors
      Throws:
      NotFoundException - provisionableId is not found
      NullArgumentException - provisionableId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.