OSID Logo
OSID Specifications
recipe package
Version 3.0.0
Interfaceosid.recipe.DirectionCookbookAssignmentSession
Implementsosid.OsidSession
Used Byosid.recipe.RecipeManager
osid.recipe.RecipeProxyManager
Description

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

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

MethodcanAssignDirections
Description

Tests if this user can alter direction/cookbook 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 lookup operations to unauthorized users.

Returnbooleanfalse if direction is not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethodcanAssignDirectionsToCookbook
Description

Tests if this user can alter direction/cookbook 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 lookup operations to unauthorized users.

Parametersosid.id.IdcookbookIdthe Id of the Cookbook
Returnbooleanfalse if mapping is not authorized, true otherwise
ErrorsNULL_ARGUMENTcookbookId is null
CompliancemandatoryThis method must be implemented.
MethodgetAssignableCookbookIds
Description

Gets a list of cookbooks including and under the given cookbook node in which any direction can be assigned.

Parametersosid.id.IdcookbookIdthe Id of the Cookbook
Returnosid.id.IdListlist of assignable cookbook Ids
ErrorsNULL_ARGUMENTcookbookId is null
OPERATION_FAILEDunable to complete request
CompliancemandatoryThis method must be implemented.
MethodgetAssignableCookbookIdsForDirection
Description

Gets a list of cookbooks including and under the given cookbook node in which a specific direction can be assigned.

Parametersosid.id.IdcookbookIdthe Id of the Cookbook
osid.id.IddirectionIdthe Id of the Direction
Returnosid.id.IdListlist of assignable cookbook Ids
ErrorsNULL_ARGUMENTcookbookId or directionId is null
OPERATION_FAILEDunable to complete request
CompliancemandatoryThis method must be implemented.
MethodassignDirectionToCookbook
Description

Adds an existing Direction to a Cookbook .

Parametersosid.id.IddirectionIdthe Id of the Direction
osid.id.IdcookbookIdthe Id of the Cookbook
ErrorsALREADY_EXISTSdirectionId is already assigned to cookbookId
NOT_FOUNDdirectionId or cookbookId not found
NULL_ARGUMENTdirectionId or cookbookId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodunassignDirectionFromCookbook
Description

Removes a Direction from a Cookbook .

Parametersosid.id.IddirectionIdthe Id of the Direction
osid.id.IdcookbookIdthe Id of the Cookbook
ErrorsNOT_FOUNDdirectionId or cookbookId not found or directionId not assigned to cookbookId
NULL_ARGUMENTdirectionId or cookbookId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodreassignDirectionToCookbook
Description

Moves a Direction from one Cookbook to another. Mappings to other Cookbooks are unaffected.

Parametersosid.id.IddirectionIdthe Id of the Direction
osid.id.IdfromCookbookIdthe Id of the current Cookbook
osid.id.IdtoCookbookIdthe Id of the destination Cookbook
ErrorsALREADY_EXISTSdirectionId already assigned to toCookbookId
NOT_FOUNDdirectionId, fromCookbookId , or toCookbookId not found or directionId not mapped to fromCookbookId
NULL_ARGUMENTdirectionId, fromCookbookId , or toCookbookId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.