Interface AwardEntryAdminSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession
All Known Subinterfaces:
AwardEntryBatchAdminSession

public interface AwardEntryAdminSession extends OsidSession

This session creates, updates, and deletes AwardEntries . The data for create and update is provided by the consumer via the form object. OsidForms are requested for each create or update and may not be reused.

Create and update operations differ in their usage. To create an AwardEntry , an AwardEntryForm is requested using getAwardEntryFormForCreate() specifying the desired record Types or none if no record Types are needed. The returned AwardEntryForm will indicate that it is to be used with a create operation and can be used to examine metdata or validate data prior to creation. Once the AwardEntryForm is submiited to a create operation, it cannot be reused with another create operation unless the first operation was unsuccessful. Each AwardEntryForm corresponds to an attempted transaction.

For updates, AwardEntryForms are requested to the AwardEntry Id that is to be updated using getAwardEntryFormForUpdate() . Similarly, the AwardEntryForm has metadata about the data that can be updated and it can perform validation before submitting the update. The AwardEntryForm can only be used once for a successful update and cannot be reused.

The delete operations delete AwardEntries . To unmap an AwardEntryForm from the current CourseCatalog , the AwardEntryCourseCatalogAssignmentSession should be used. These delete operations attempt to remove the AwardEntryForm itself thus removing it from all known CourseCatalog catalogs.

This session includes an Id aliasing mechanism to assign an external Id to an internally assigned Id.

  • Method Details

    • getCourseCatalogId

      Id getCourseCatalogId()
      Gets the CourseCatalog Id associated with this session.
      Returns:
      the CourseCatalog Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getCourseCatalog

      Gets the CourseCatalog associated with this session.
      Returns:
      the course catalog
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • canCreateAwardEntries

      boolean canCreateAwardEntries()
      Tests if this user can create AwardEntries . A return of true does not guarantee successful authorization. A return of false indicates that it is known creating an AwardEntry 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 AwardEntry creation is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • canCreateAwardEntryWithRecordTypes

      boolean canCreateAwardEntryWithRecordTypes(Type[] awardEntryRecordTypes)
      Tests if this user can create a single Porgram using the desired record types. While CourseChronicleManager.getAwardEntryRecordTypes() can be used to examine which records are supported, this method tests which record(s) are required for creating a specific AwardEntry . Providing an empty array tests if an AwardEntry can be created with no records.
      Parameters:
      awardEntryRecordTypes - array of award entry record types
      Returns:
      true if AwardEntry creation using the specified record Types is supported, false otherwise
      Throws:
      NullArgumentException - awardEntryRecordTypes is null
      Compliance:
      mandatory - This method must be implemented.
    • getAwardEntryFormForCreate

      AwardEntryForm getAwardEntryFormForCreate(Id awardId, Id resourceId, Type[] awardEntryRecordTypes) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the award entry form for creating new award entries. A new form should be requested for each create transaction.
      Parameters:
      awardId - an award Id
      resourceId - a student Id
      awardEntryRecordTypes - array of award entry record types
      Returns:
      the award entry form
      Throws:
      NotFoundException - awardId or resourceId is not found
      NullArgumentException - awardId, resourceId , or awardEntryRecordTypes 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.
    • createAwardEntry

      Creates a new AwardEntry .
      Parameters:
      awardEntryForm - the form for this AwardEntry
      Returns:
      the new AwardEntry
      Throws:
      IllegalStateException - awardEntryForm already used in a create transaction
      InvalidArgumentException - one or more of the form elements is invalid
      NullArgumentException - awardEntryForm is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      UnsupportedException - awardEntryForm did not originate from getAwardEntryFormForCreate()
      Compliance:
      mandatory - This method must be implemented.
    • canUpdateAwardEntries

      boolean canUpdateAwardEntries()
      Tests if this user can update AwardEntries . A return of true does not guarantee successful authorization. A return of false indicates that it is known updating an AwardEntry 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 AwardEntry modification is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getAwardEntryFormForUpdate

      AwardEntryForm getAwardEntryFormForUpdate(Id awardEntryId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the award entry form for updating an existing award entry. A new award entry form should be requested for each update transaction.
      Parameters:
      awardEntryId - the Id of the AwardEntry
      Returns:
      the award entry form
      Throws:
      NotFoundException - awardEntryId is not found
      NullArgumentException - awardEntryId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • updateAwardEntry

      void updateAwardEntry(AwardEntryForm awardEntryForm) throws OperationFailedException, PermissionDeniedException
      Updates an existing award entry.
      Parameters:
      awardEntryForm - the form containing the elements to be updated
      Throws:
      IllegalStateException - awardEntryForm already used in an update transaction
      InvalidArgumentException - awardEntryId is not found
      NullArgumentException - awardEntryForm is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      UnsupportedException - awardEntryForm did not originate from getAwardEntryFormForUpdate()
      Compliance:
      mandatory - This method must be implemented.
    • canDeleteAwardEntries

      boolean canDeleteAwardEntries()
      Tests if this user can delete AwardEntries . A return of true does not guarantee successful authorization. A return of false indicates that it is known deleting an AwardEntry 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 AwardEntry deletion is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • deleteAwardEntry

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

      boolean canManageAwardEntryAliases()
      Tests if this user can manage Id aliases for AwardEntries . 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 AwardEntry aliasing is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • aliasAwardEntry

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