OSID Logo
OSID Specifications
relationship package
Version 3.0.0
Release Candidate Preview
Interfaceosid.relationship.FamilyHierarchyDesignSession
Implementsosid.OsidSession
Description

This session manages a hierarchy of families may be organized into a hierarchy for organizing or federating. A parent Family includes all of the relationships of its children such that a single root node contains all of the relationships of the federation.

MethodgetFamilyHierarchyId
Description

Gets the hierarchy Id associated with this session.

Returnosid.id.Idthe hierarchy Id associated with this session
CompliancemandatoryThis method must be implemented.
MethodgetFamilyHierarchy
Description

Gets the hierarchy associated with this session.

Returnosid.hierarchy.Hierarchythe hierarchy associated with this session
ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodcanModifyFamilyHierarchy
Description

Tests if this user can change the hierarchy. A return of true does not guarantee successful authorization. A return of false indicates that it is known performing any update will result in a PERMISSION_DENIED. This is intended as a hint to an application that may opt not to offer these operations to an unauthorized user.

Returnboolean false if changing this hierarchy is not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethodaddRootFamily
Description

Adds a root family.

Parametersosid.id.IdfamilyIdthe Id of a family
ErrorsALREADY_EXISTS familyId is already in hierarchy
NOT_FOUND familyId not found
NULL_ARGUMENT familyId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodremoveRootFamily
Description

Removes a root family.

Parametersosid.id.IdfamilyIdthe Id of a family
ErrorsNOT_FOUND familyId not a root
NULL_ARGUMENT familyId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodaddChildFamily
Description

Adds a child to a family.

Parametersosid.id.IdfamilyIdthe Id of a family
osid.id.IdchildIdthe Id of the new child
ErrorsALREADY_EXISTS familyId is already a parent of childId
NOT_FOUND familyId or childId not found
NULL_ARGUMENT familyId or childId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodremoveChildFamily
Description

Removes a child from a family.

Parametersosid.id.IdfamilyIdthe Id of a family
osid.id.IdchildIdthe Id of the new child
ErrorsNOT_FOUND familyId not a parent of childId
NULL_ARGUMENT familyId or childId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodremoveChildFamilies
Description

Removes all children from a family.

Parametersosid.id.IdfamilyIdthe Id of a family
ErrorsNOT_FOUND familyId not in hierarchy
NULL_ARGUMENT familyId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.