Interface BankLookupSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface BankLookupSession extends OsidSession

This session provides methods for retrieving Bank objects. The Bank represents a collection of Items and Assessments .

This session defines views that offer differing behaviors when retrieving multiple objects.

  • comparative view: elements may be silently omitted or re-ordered
  • plenary view: provides a complete set or is an error condition

Generally, the comparative view should be used for most applications as it permits operation even if there is data that cannot be accessed. For example, a browsing application may only need to examine the Banks it can access, without breaking execution. However, an administrative application may require all Bank elements to be available.

Banks may have an additional records indicated by their respective record types. The record may not be accessed through a cast of the Bank .

  • Method Details

    • canLookupBanks

      boolean canLookupBanks()
      Tests if this user can perform Bank lookups. 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 opt not to offer lookup operations to unauthorized users.
      Returns:
      false if lookup methods are not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • useComparativeBankView

      void useComparativeBankView()
      The returns from the lookup methods may omit or translate elements based on this session, such as assessment, 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.
    • usePlenaryBankView

      void usePlenaryBankView()
      A complete view of the Bank 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.
    • getBank

      Gets the Bank specified by its Id . In plenary mode, the exact Id is found or a NOT_FOUND results. Otherwise, the returned Bank may have a different Id than requested, such as the case where a duplicate Id was assigned to a Bank and retained for compatibility.
      Parameters:
      bankId - Id of the Bank
      Returns:
      the bank
      Throws:
      NotFoundException - bankId not found
      NullArgumentException - bankId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure occurred
      Compliance:
      mandatory - This method is must be implemented.
    • getBanksByIds

      Gets a BankList corresponding to the given IdList . In plenary mode, the returned list contains all of the banks specified in the Id list, in the order of the list, including duplicates, or an error results if an Id in the supplied list is not found or inaccessible. Otherwise, inaccessible Bank objects may be omitted from the list and may present the elements in any order including returning a unique set.
      Parameters:
      bankIds - the list of Ids to retrieve
      Returns:
      the returned Bank list
      Throws:
      NotFoundException - an Id was not found
      NullArgumentException - bankIds is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure occurred
      Compliance:
      mandatory - This method must be implemented.
    • getBanksByGenusType

      BankList getBanksByGenusType(Type bankGenusType) throws OperationFailedException, PermissionDeniedException
      Gets a BankList corresponding to the given bank genus Type which does not include banks of types derived from the specified Type . In plenary mode, the returned list contains all known banks or an error results. Otherwise, the returned list may contain only those banks that are accessible through this session.
      Parameters:
      bankGenusType - a bank genus type
      Returns:
      the returned Bank list
      Throws:
      NullArgumentException - bankGenusType is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure occurred
      Compliance:
      mandatory - This method must be implemented.
    • getBanksByParentGenusType

      BankList getBanksByParentGenusType(Type bankGenusType) throws OperationFailedException, PermissionDeniedException
      Gets a BankList corresponding to the given bank genus Type and include any additional banks with genus types derived from the specified Type . In plenary mode, the returned list contains all known banks or an error results. Otherwise, the returned list may contain only those banks that are accessible through this session.
      Parameters:
      bankGenusType - a bank genus type
      Returns:
      the returned Bank list
      Throws:
      NullArgumentException - bankGenusType is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure occurred
      Compliance:
      mandatory - This method must be implemented.
    • getBanksByRecordType

      BankList getBanksByRecordType(Type bankRecordType) throws OperationFailedException, PermissionDeniedException
      Gets a BankList containing the given bank record Type . In plenary mode, the returned list contains all known banks or an error results. Otherwise, the returned list may contain only those banks that are accessible through this session.
      Parameters:
      bankRecordType - a bank record type
      Returns:
      the returned Bank list
      Throws:
      NullArgumentException - bankRecordType is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure occurred
      Compliance:
      mandatory - This method must be implemented.
    • getBanksByProvider

      BankList getBanksByProvider(Id resourceId) throws OperationFailedException, PermissionDeniedException
      Gets a BankList from the given provider. In plenary mode, the returned list contains all known banks or an error results. Otherwise, the returned list may contain only those banks that are accessible through this session.
      Parameters:
      resourceId - a resource Id
      Returns:
      the returned Bank list
      Throws:
      NullArgumentException - resourceId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure occurred
      Compliance:
      mandatory - This method must be implemented.
    • getBanks

      Gets all Banks . In plenary mode, the returned list contains all known banks or an error results. Otherwise, the returned list may contain only those banks that are accessible through this session.
      Returns:
      a BankList
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure occurred
      Compliance:
      mandatory - This method must be implemented.