Interface InquiryEnablerRuleLookupSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface InquiryEnablerRuleLookupSession extends OsidSession

This session provides methods to retrieve InquiryEnabler to Inquiry mappings. An Inquiry with multiple InquiryEnablers means any positive rule evaluation across the enablers result in an effective Inquiry .

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
  • isolated inquest view: All methods in this session operate, retrieve and pertain inquiry enablers defined explicitly in the current inquest
  • federated inquest view: All methods in this session operate, retrieve and pertain to all inquiry enablers defined in this inquest and any other inquiry enablers implicitly available in this inquest through inquest inheritence.
  • Method Details

    • getInquestId

      Id getInquestId()
      Gets the Inquest Id associated with this session.
      Returns:
      the Inquest Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getInquest

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

      boolean canLookupInquiryEnablerRules()
      Tests if this user can perform lookups of inquiry enabler/inquiry 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 mappings is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • useComparativeInquiryEnablerRuleView

      void useComparativeInquiryEnablerRuleView()
      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.
    • usePlenaryInquiryEnablerRuleView

      void usePlenaryInquiryEnablerRuleView()
      A complete view of the InquiryEnabler and Inquiry 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.
    • useFederatedInquestView

      void useFederatedInquestView()
      Federates the view for methods in this session. A federated view will include inquiry enablers in inquests which are children of this inquest in the inquest hierarchy.
      Compliance:
      mandatory - This method is must be implemented.
    • useIsolatedInquestView

      void useIsolatedInquestView()
      Isolates the view for methods in this session. An isolated view restricts lookups to this inquest only.
      Compliance:
      mandatory - This method is must be implemented.
    • getInquiryEnablerIdsForInquiry

      IdList getInquiryEnablerIdsForInquiry(Id inquiryId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the InquiryEnabler Id associated with an Inquiry .
      Parameters:
      inquiryId - Id of the Inquiry
      Returns:
      the inquiry enabler Ids
      Throws:
      NotFoundException - inquiryId is not found
      NullArgumentException - inquiry is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getInquiryEnablersForInquiry

      Gets the InquiryEnablers associated with an Inquiry .
      Parameters:
      inquiryId - Id of the Inquiry
      Returns:
      the inquiry enablers
      Throws:
      NotFoundException - inquiryId is not found
      NullArgumentException - inquiryId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getInquiryIdsForInquiryEnabler

      IdList getInquiryIdsForInquiryEnabler(Id inquiryEnablerId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the Inquiry Ids mapped to an InquiryEnabler .
      Parameters:
      inquiryEnablerId - Id of an InquiryEnabler
      Returns:
      list of inquiry Ids
      Throws:
      NotFoundException - inquiryEnablerId is not found
      NullArgumentException - inquiryEnablerId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getInquiriesForInquiryEnabler

      InquiryList getInquiriesForInquiryEnabler(Id inquiryEnablerId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the Inquiries mapped to an InquiryEnabler .
      Parameters:
      inquiryEnablerId - Id of an InquiryEnabler
      Returns:
      list of inquiries
      Throws:
      NotFoundException - inquiryEnablerId is not found
      NullArgumentException - inquiryEnablerId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.