OSID Logo
OSID Specifications
relationship rules package
Version 3.0.0
Interfaceosid.relationship.rules.RelationshipEnablerFamilyAssignmentSession
Implementsosid.OsidSession
Used Byosid.relationship.rules.RelationshipRulesManager
osid.relationship.rules.RelationshipRulesProxyManager
Description

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

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

MethodcanAssignRelationshipEnablers
Description

Tests if this user can alter relationship enabler/family 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 mapping is not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethodcanAssignRelationshipEnablersToFamily
Description

Tests if this user can alter relationship enabler/family 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.IdfamilyIdthe Id of the Family
Returnbooleanfalse if mapping is not authorized, true otherwise
ErrorsNULL_ARGUMENTfamilyId is null
CompliancemandatoryThis method must be implemented.
MethodgetAssignableFamilyIds
Description

Gets a list of families including and under the given family node in which any family enabler can be assigned.

Parametersosid.id.IdfamilyIdthe Id of the Family
Returnosid.id.IdListlist of assignable relationship Ids
ErrorsNULL_ARGUMENTfamilyId is null
OPERATION_FAILEDunable to complete request
CompliancemandatoryThis method must be implemented.
MethodgetAssignableFamilyIdsForRelationshipEnabler
Description

Gets a list of families including and under the given family node in which a specific family enabler can be assigned.

Parametersosid.id.IdfamilyIdthe Id of the Family
osid.id.IdrelationshipEnablerIdthe Id of the RelationshipEnabler
Returnosid.id.IdListlist of assignable family Ids
ErrorsNULL_ARGUMENTfamilyId or relationshipEnablerId is null
OPERATION_FAILEDunable to complete request
CompliancemandatoryThis method must be implemented.
MethodassignRelationshipEnablerToFamily
Description

Adds an existing RelationshipEnabler to a Family .

Parametersosid.id.IdrelationshipEnablerIdthe Id of the RelationshipEnabler
osid.id.IdfamilyIdthe Id of the Family
ErrorsALREADY_EXISTSrelationshipEnablerId is already assigned to familyId
NOT_FOUNDrelationshipEnablerId or familyId not found
NULL_ARGUMENTrelationshipEnablerId or familyId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodunassignRelationshipEnablerFromFamily
Description

Removes a RelationshipEnabler from a Family .

Parametersosid.id.IdrelationshipEnablerIdthe Id of the RelationshipEnabler
osid.id.IdfamilyIdthe Id of the Family
ErrorsNOT_FOUNDrelationshipEnablerId or familyId not found or relationshipEnablerId is not assigned to familyId
NULL_ARGUMENTrelationshipEnablerId or familyId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodreassignRelationshipEnablerToFamily
Description

Moves a RelationshipEnabler from one Family to another. Mappings to other Families are unaffected.

Parametersosid.id.IdrelationshipEnablerIdthe Id of the RelationshipEnabler
osid.id.IdfromFamilyIdthe Id of the current Family
osid.id.IdtoFamilyIdthe Id of the destination Family
ErrorsALREADY_EXISTSrelationshipEnablerId already assigned to toFamilyId
NOT_FOUNDrelationshipEnablerId, fromFamilyId , or toFamilyId not found or relationshipEnablerId not mapped to fromFamilyId
NULL_ARGUMENTrelationshipEnabelrId, fromFamilyId , or toFamilyId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.