OSID Logo
OSID Specifications
authentication package
Version 3.0.0
Release Candidate Preview
Interfaceosid.authentication.AgencyHierarchyDesignSession
Implementsosid.OsidSession
Description

This session defines methods for managing a hierarchy of Agency objects. Each node in the hierarchy is a unique Agency.

MethodgetAgencyHierarchyId
Description

Gets the hierarchy Id associated with this session.

Returnosid.id.Idthe hierarchy Id associated with this session
CompliancemandatoryThis method must be implemented.
MethodgetAgencyHierarchy
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.
MethodcanModifyAgencyHierarchy
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.
MethodaddRootAgency
Description

Adds a root agency.

Parametersosid.id.IdagencyIdthe Id of an agency
ErrorsALREADY_EXISTS agencyId is already in hierarchy
NOT_FOUND agency not found
NULL_ARGUMENT agencyId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodremoveRootAgency
Description

Removes a root agency from this hierarchy.

Parametersosid.id.IdagencyIdthe Id of an agency
ErrorsNOT_FOUND agencyId not a parent of childId
NULL_ARGUMENT agencyId or childId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodaddChildAgency
Description

Adds a child to an agency.

Parametersosid.id.IdagencyIdthe Id of an agency
osid.id.IdchildIdthe Id of the new child
ErrorsALREADY_EXISTS agencyId already a parent of childId
NOT_FOUND agencyId or childId not found
NULL_ARGUMENT agencyId or childId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodremoveChildAgency
Description

Removes a child from an agency.

Parametersosid.id.IdagencyIdthe Id of an agency
osid.id.IdchildIdthe Id of the new child
ErrorsNOT_FOUND agencyId is not a parent of childId
NULL_ARGUMENT agencyId or childId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodremoveChildAgencies
Description

Removes all children from an agency.

Parametersosid.id.IdagencyIdthe Id of an agency
ErrorsNOT_FOUND agencyId is not in hierarchy
NULL_ARGUMENT agencyId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.