Interface InquiryEnablerRuleApplicationSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface InquiryEnablerRuleApplicationSession extends OsidSession

This session provides methods to apply InquiryEnablers to Inquiries. An Inquiry with multiple InquiryEnablers means any positive rule evaluation across the enablers result in an active Inquiry.

  • 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.
    • canAssignInquiryEnablers

      boolean canAssignInquiryEnablers()
      Tests if this user can alter inquiry enabler/inquiry 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.
    • assignInquiryEnablerToInquiry

      void assignInquiryEnablerToInquiry(Id inquiryEnablerId, Id inquiryId) throws AlreadyExistsException, NotFoundException, OperationFailedException, PermissionDeniedException
      Adds an existing InquiryEnabler to an Inquiry.
      Parameters:
      inquiryEnablerId - the Id of the InquiryEnabler
      inquiryId - the Id of the Inquiry
      Throws:
      AlreadyExistsException - inquiryEnablerId already applied to inquiryId
      NotFoundException - inquiryEnablerId or inquiryId not found
      NullArgumentException - inquiryEnablerId or inquiryId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • unassignInquiryEnablerFromInquiry

      void unassignInquiryEnablerFromInquiry(Id inquiryEnablerId, Id inquiryId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Removes an InquiryEnabler from an Inquiry.
      Parameters:
      inquiryEnablerId - the Id of the InquiryEnabler
      inquiryId - the Id of the Inquiry
      Throws:
      NotFoundException - inquiryEnablerId or inquiryId not found or inquiryEnablerId not applied to inquiryId
      NullArgumentException - inquiryEnablerId or inquiryId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • canSequenceInquiryEnablers

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

      void moveInquiryEnablerAhead(Id inquiryEnablerId, Id inquiryId, Id referenceId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Reorders inquiry enablers for an inquiry by moving the specified inquiry enabler in front of a reference inquiry enabler.
      Parameters:
      inquiryEnablerId - the Id of an InquiryEnabler
      inquiryId - the Id of an Inquiry
      referenceId - the reference inquiry enabler Id
      Throws:
      NotFoundException - inquiryEnablerId, inquiryId , or referenceId not found or, inquiryEnablerId or referenceId not related to inquiryId
      NullArgumentException - inquiryEnablerId, inquiryId, or referenceId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • moveInquiryEnablerBehind

      void moveInquiryEnablerBehind(Id inquiryEnablerId, Id inquiryId, Id referenceId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Reorders inquiry enablers for an inquiry by moving the specified inquiry enabler behind a reference inquiry enabler.
      Parameters:
      inquiryEnablerId - the Id of an InquiryEnabler
      inquiryId - the Id of an Inquiry
      referenceId - the reference inquiry enabler Id
      Throws:
      NotFoundException - inquiryEnablerId, inquiryId , or referenceId not found or, inquiryEnablerId or referenceId not related to inquiryId
      NullArgumentException - inquiryEnablerId, inquiryId, or referenceId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • orderInquiryEnablers

      void orderInquiryEnablers(Id[] inquiryEnablerIds, Id inquiryId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Reorders a set of inquiry enablers for an inquiry.
      Parameters:
      inquiryEnablerIds - the Ids for a set of InquiryEnablers
      inquiryId - the Id of an Inquiry
      Throws:
      NotFoundException - inquiryConstraienrId not found or, an inquiryEnablerId not related to inquiryId
      NullArgumentException - inquiryEnablerIds or inquiryId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.