OSID Logo
OSID Specifications
workflow package
Version 3.1.0
Interfaceosid.workflow.WorkOfficeAssignmentSession
Implementsosid.OsidSession
Used Byosid.workflow.WorkflowManager
osid.workflow.WorkflowProxyManager
Description

This session provides methods to re-assign Works to Office mappings. A Work may appear in multiple Offices and removing the last reference to a Work is the equivalent of deleting it. Each Office may have its own authorizations governing who is allowed to operate on it.

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

MethodcanAssignWorks
Description

Tests if this user can alter work/office 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.
MethodcanAssignWorksToOffice
Description

Tests if this user can alter work/office 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.IdofficeId the Id of the Office
Returnboolean false if workflow is not authorized, true otherwise
ErrorsNULL_ARGUMENT officeId is null
Compliancemandatory This method must be implemented.
MethodgetAssignableOfficeIds
Description

Gets a list of offices including and under the given office node in which any work can be assigned.

Parametersosid.id.IdofficeId the Id of the Office
Returnosid.id.IdList list of assignable office Ids
ErrorsNULL_ARGUMENT officeId is null
OPERATION_FAILED unable to complete request
Compliancemandatory This method must be implemented.
MethodgetAssignableOfficeIdsForWork
Description

Gets a list of offices including and under the given office node in which a specific work can be assigned.

Parametersosid.id.IdofficeId the Id of the Office
osid.id.IdworkId the Id of the Work
Returnosid.id.IdList list of assignable office Ids
ErrorsNULL_ARGUMENT officeId or workId is null
OPERATION_FAILED unable to complete request
Compliancemandatory This method must be implemented.
MethodassignWorkToOffice
Description

Adds an existing Work to an Office.

Parametersosid.id.IdworkId the Id of the Work
osid.id.IdofficeId the Id of the Office
ErrorsALREADY_EXISTS workId is already assigned to officeId
NOT_FOUND workId or officeId not found
NULL_ARGUMENT workId or officeId is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodunassignWorkFromOffice
Description

Removes a Work from an Office.

Parametersosid.id.IdworkId the Id of the Work
osid.id.IdofficeId the Id of the Office
ErrorsNOT_FOUND workId or officeId not found or workId not assigned to officeId
NULL_ARGUMENT workId or officeId is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodreassignWorkToOffice
Description

Moves a Work from one Office to another. Mappings to other Offices are unaffected.

Parametersosid.id.IdworkId the Id of the Work
osid.id.IdfromOfficeId the Id of the current Office
osid.id.IdtoOfficeId the Id of the destination Office
ErrorsALREADY_EXISTS workId, already assigned to toOfficeId
NOT_FOUND workId fromOfficeId, or toOfficeId not found or workId not mapped to fromOfficeId
NULL_ARGUMENT workId, fromOfficeId, or toOfficeId is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.