Interface InquiryEnablerAdminSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface InquiryEnablerAdminSession extends OsidSession

This session creates and removes inquiry enablers. The data for create and update is provided via the InquiryEnablerForm .

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

      boolean canCreateInquiryEnabler()
      Tests if this user can create inquiry enablers. A return of true does not guarantee successful authorization. A return of false indicates that it is known creating an InquiryEnabler will result in a PERMISSION_DENIED . This is intended as a hint to an application that may opt not to offer create operations to an unauthorized user.
      Returns:
      false if InquiryEnabler creation is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • canCreateInquiryEnablerWithRecordTypes

      boolean canCreateInquiryEnablerWithRecordTypes(Type[] inquiryEnablerRecordTypes)
      Tests if this user can create a single InquiryEnabler using the desired record types. While InquiryRulesManager.getInquiryEnablerRecordTypes() can be used to examine which records are supported, this method tests which record(s) are required for creating a specific InquiryEnabler . Providing an empty array tests if an InquiryEnabler can be created with no records.
      Parameters:
      inquiryEnablerRecordTypes - array of inquiry enabler record types
      Returns:
      true if InquiryEnabler creation using the specified record Types is supported, false otherwise
      Throws:
      NullArgumentException - inquiryEnablerRecordTypes is null
      Compliance:
      mandatory - This method must be implemented.
    • getInquiryEnablerFormForCreate

      InquiryEnablerForm getInquiryEnablerFormForCreate(Type[] inquiryEnablerRecordTypes) throws OperationFailedException, PermissionDeniedException
      Gets the inquiry enabler form for creating new inquiry enablers. A new form should be requested for each create transinquiry.
      Parameters:
      inquiryEnablerRecordTypes - array of inquiry enabler record types
      Returns:
      the inquiry enabler form
      Throws:
      NullArgumentException - inquiryEnablerRecordTypes is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      UnsupportedException - unable to get form for requested record types
      Compliance:
      mandatory - This method must be implemented.
    • createInquiryEnabler

      InquiryEnabler createInquiryEnabler(InquiryEnablerForm inquiryEnablerForm) throws OperationFailedException, PermissionDeniedException
      Creates a new InquiryEnabler .
      Parameters:
      inquiryEnablerForm - the form for this InquiryEnabler
      Returns:
      the new InquiryEnabler
      Throws:
      IllegalStateException - inquiryEnablerForm already used in a create transinquiry
      InvalidArgumentException - one or more of the form elements is invalid
      NullArgumentException - inquiryEnablerForm is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      UnsupportedException - inquiryEnablerForm did not originate from getInquiryEnablerFormForCreate()
      Compliance:
      mandatory - This method must be implemented.
    • canUpdateInquiryEnablers

      boolean canUpdateInquiryEnablers()
      Tests if this user can update inquiry enablers. A return of true does not guarantee successful authorization. A return of false indicates that it is known updating an InquiryEnabler will result in a PERMISSION_DENIED . This is intended as a hint to an application that may opt not to offer update operations to an unauthorized user.
      Returns:
      false if InquiryEnabler modification is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getInquiryEnablerFormForUpdate

      InquiryEnablerForm getInquiryEnablerFormForUpdate(Id inquiryEnablerId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the inquiry enabler form for updating an existing inquiry enabler. A new inquiry enabler form should be requested for each update transinquiry.
      Parameters:
      inquiryEnablerId - the Id of the InquiryEnabler
      Returns:
      the inquiry enabler form
      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.
    • updateInquiryEnabler

      void updateInquiryEnabler(InquiryEnablerForm inquiryEnablerForm) throws OperationFailedException, PermissionDeniedException
      Updates an existing inquiry enabler.
      Parameters:
      inquiryEnablerForm - the form containing the elements to be updated
      Throws:
      IllegalStateException - inquiryEnablerForm already used in an update transinquiry
      InvalidArgumentException - the form contains an invalid value
      NullArgumentException - inquiryEnablerForm is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      UnsupportedException - inquiryEnablerForm did not originate from getInquiryEnablerFormForUpdate()
      Compliance:
      mandatory - This method must be implemented.
    • canDeleteInquiryEnablers

      boolean canDeleteInquiryEnablers()
      Tests if this user can delete inquiry enablers. A return of true does not guarantee successful authorization. A return of false indicates that it is known deleting an InquiryEnabler will result in a PERMISSION_DENIED . This is intended as a hint to an application that may opt not to offer delete operations to an unauthorized user.
      Returns:
      false if InquiryEnabler deletion is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • deleteInquiryEnabler

      void deleteInquiryEnabler(Id inquiryEnablerId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Deletes an InquiryEnabler .
      Parameters:
      inquiryEnablerId - the Id of the InquiryEnabler to remove
      Throws:
      NotFoundException - inquiryEnablerId not found
      NullArgumentException - inquiryEnablerId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • canManageInquiryEnablerAliases

      boolean canManageInquiryEnablerAliases()
      Tests if this user can manage Id aliases for inquiry enablers. A return of true does not guarantee successful authorization. A return of false indicates that it is known changing an alias will result in a PERMISSION_DENIED . This is intended as a hint to an application that may opt not to offer alias operations to an unauthorized user.
      Returns:
      false if InquiryEnabler aliasing is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • aliasInquiryEnabler

      void aliasInquiryEnabler(Id inquiryEnablerId, Id aliasId) throws AlreadyExistsException, NotFoundException, OperationFailedException, PermissionDeniedException
      Adds an Id to an InquiryEnabler for the purpose of creating compatibility. The primary Id of the InquiryEnabler is determined by the provider. The new Id performs as an alias to the primary Id . If the alias is a pointer to another inquiry enabler. it is reassigned to the given inquiry enabler Id .
      Parameters:
      inquiryEnablerId - the Id of an InquiryEnabler
      aliasId - the alias Id
      Throws:
      AlreadyExistsException - aliasId is already assigned
      NotFoundException - inquiryEnablerId not found
      NullArgumentException - inquiryEnablerId or aliasId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.