OSID Logo
OSID Specifications
checklist package
Version 3.1.0
Interfaceosid.checklist.TodoChecklistAssignmentSession
Implementsosid.OsidSession
Used Byosid.checklist.ChecklistManager
osid.checklist.ChecklistProxyManager
Description

This session provides methods to re-assign Todos to Checklists. A Todo may map to multiple Checklists and removing the last reference to a Todo is the equivalent of deleting it. Each Checklist may have its own authorizations governing who is allowed to operate on it.

Adding a reference of a Todo to another Checklist is not a copy operation (eg: does not change its Id).

MethodcanAssignTodos
Description

Tests if this user can alter todo/checklist 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 assignment operations to unauthorized users.

Returnboolean false if mapping is not authorized, true otherwise
Compliancemandatory This method must be implemented.
MethodcanAssignTodosToChecklist
Description

Tests if this user can alter todo/checklist 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 assignment operations to unauthorized users.

Parametersosid.id.IdchecklistId the Id of the Checklist
Returnboolean false if mapping is not authorized, true otherwise
ErrorsNULL_ARGUMENT checklistId is null
Compliancemandatory This method must be implemented.
MethodgetAssignableChecklistIds
Description

Gets a list of checklists including and under the given checklist node in which any todo can be assigned.

Parametersosid.id.IdchecklistId the Id of the Checklist
Returnosid.id.IdList list of assignable checklist Ids
ErrorsNULL_ARGUMENT checklistId is null
OPERATION_FAILED unable to complete request
Compliancemandatory This method must be implemented.
MethodgetAssignableChecklistIdsForTodo
Description

Gets a list of checklists including and under the given checklist node in which a specific todo can be assigned.

Parametersosid.id.IdchecklistId the Id of the Checklist
osid.id.IdtodoId the Id of the Todo
Returnosid.id.IdList list of assignable checklist Ids
ErrorsNULL_ARGUMENT checklistId or todoId is null
OPERATION_FAILED unable to complete request
Compliancemandatory This method must be implemented.
MethodassignTodoToChecklist
Description

Adds an existing Todo to a Checklist.

Parametersosid.id.IdtodoId the Id of the Todo
osid.id.IdchecklistId the Id of the Checklist
ErrorsALREADY_EXISTS todoId is already assigned to checklistId
NOT_FOUND todoId or checklistId not found
NULL_ARGUMENT todoId or checklistId is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodunassignTodoFromChecklist
Description

Removes a Todo from a Checklist.

Parametersosid.id.IdtodoId the Id of the Todo
osid.id.IdchecklistId the Id of the Checklist
ErrorsNOT_FOUND todoId or checklistId not found or todoId is not assigned to checklistId
NULL_ARGUMENT todoId or checklistId is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodreassignTodoToChecklist
Description

Moves a Todo from one Checklist to another. Mappings to other Checklists are unaffected.

Parametersosid.id.IdtodoId the Id of the Todo
osid.id.IdfromChecklistId the Id of the current Checklist
osid.id.IdtoChecklistId the Id of the destination Checklist
ErrorsALREADY_EXISTS todoId already assigned to toChecklistId
NOT_FOUND todoId, fromChecklistId, or toChecklistId not found or todoId not mapped to fromChecklistId
NULL_ARGUMENT todoId, fromChecklistId, or toChecklistId is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.