OSID Logo
OSID Specifications
checklist package
Version 3.0.0
Release Candidate Preview
Interfaceosid.checklist.ChecklistAdminSession
Implementsosid.OsidSession
Description

This session creates, updates, and deletes Checklists. 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 a Checklist, a ChecklistForm is requested using geChecklistFormForCreate() specifying the desired record Types or none if no record Types are needed. The returned ChecklistForm 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 ChecklistForm is submiited to a create operation, it cannot be reused with another create operation unless the first operation was unsuccessful. Each ChecklistForm corresponds to an attempted transaction.

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

The delete operations delete Checklists.

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

MethodcanCreateChecklists
Description

Tests if this user can create Checklists. A return of true does not guarantee successful authorization. A return of false indicates that it is known creating a Checklist will result in a PERMISSION_DENIED. This is intended as a hint to an application that may not wish to offer create operations to unauthorized users.

Returnboolean false if Checklist creation is not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethodcanCreateChecklistWithRecordTypes
Description

Tests if this user can create a single Checklist using the desired record types. While ChecklistManager.getChecklistRecordTypes() can be used to examine which records are supported, this method tests which record(s) are required for creating a specific Checklist. Providing an empty array tests if a Checklist can be created with no records.

Parametersosid.type.Type[]checklistRecordTypesarray of checklist record types
Returnboolean true if Checklist creation using the specified record Types is supported, false otherwise
ErrorsNULL_ARGUMENT checklistRecordTypes is null
CompliancemandatoryThis method must be implemented.
MethodgetChecklistFormForCreate
Description

Gets the checklist form for creating new checklists. A new form should be requested for each create transaction.

Parametersosid.type.Type[]checklistRecordTypesarray of checklist record types
Returnosid.checklist.ChecklistFormthe checklist form
ErrorsNULL_ARGUMENT checklistRecordTypes is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
UNSUPPORTEDunable to get form for requested record types
CompliancemandatoryThis method must be implemented.
MethodcreateChecklist
Description

Creates a new Checklist.

Parametersosid.checklist.ChecklistFormchecklistFormthe form for this Checklist
Returnosid.checklist.Checklistthe new Checklist
ErrorsILLEGAL_STATE checklistForm already used in a create transaction
INVALID_ARGUMENTone or more of the form elements is invalid
NULL_ARGUMENT checklistForm is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
UNSUPPORTED checklistForm did not originate from getChecklistFormForCreate()
CompliancemandatoryThis method must be implemented.
MethodcanUpdateChecklists
Description

Tests if this user can update Checklists. A return of true does not guarantee successful authorization. A return of false indicates that it is known updating a Checklist will result in a PERMISSION_DENIED. This is intended as a hint to an application that may not wish to offer update operations to unauthorized users.

Returnboolean false if Checklist modification is not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethodgetChecklistFormForUpdate
Description

Gets the checklist form for updating an existing checklist. A new checklist form should be requested for each update transaction.

Parametersosid.id.IdchecklistIdthe Id of the Checklist
Returnosid.checklist.ChecklistFormthe checklist form
ErrorsNOT_FOUND checklistId is not found
NULL_ARGUMENT checklistId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodupdateChecklist
Description

Updates an existing checklist.

Parametersosid.checklist.ChecklistFormchecklistFormthe form containing the elements to be updated
ErrorsILLEGAL_STATE checklistForm already used in an update transaction
INVALID_ARGUMENTthe form contains an invalid value
NULL_ARGUMENT checklistForm is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
UNSUPPORTED checklistForm did not originate from getChecklistFormForUpdate()
CompliancemandatoryThis method must be implemented.
MethodcanDeleteChecklists
Description

Tests if this user can delete Checklists A return of true does not guarantee successful authorization. A return of false indicates that it is known deleting a Checklist will result in a PERMISSION_DENIED. This is intended as a hint to an application that may not wish to offer delete operations to unauthorized users.

Returnboolean false if Checklist deletion is not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethoddeleteChecklist
Description

Deletes a Checklist.

Parametersosid.id.IdchecklistIdthe Id of the Checklist to remove
ErrorsNOT_FOUND checklistId not found
NULL_ARGUMENT checklistId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodcanManageChecklistAliases
Description

Tests if this user can manage Id aliases for Checklists. 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.

Returnboolean false if Checklist aliasing is not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethodaliasChecklist
Description

Adds an Id to a Checklist for the purpose of creating compatibility. The primary Id of the Checklist is determined by the provider. The new Id performs as an alias to the primary Id. If the alias is a pointer to another checklist, it is reassigned to the given checklist Id.

Parametersosid.id.IdchecklistIdthe Id of a Checklist
osid.id.IdaliasIdthe alias Id
ErrorsALREADY_EXISTS aliasId is already assigned
NOT_FOUND checklistId not found
NULL_ARGUMENT checklistId or aliasId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.