OSID Logo
OSID Specifications
subscription package
Version 3.0.0
Interfaceosid.subscription.PublisherHierarchyDesignSession
Implementsosid.OsidSession
Used Byosid.subscription.SubscriptionManager
osid.subscription.SubscriptionProxyManager
Description

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

MethodgetPublisherHierarchyId
Description

Gets the hierarchy Id associated with this session.

Returnosid.id.Idthe hierarchy Id associated with this session
CompliancemandatoryThis method must be implemented.
MethodgetPublisherHierarchy
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.
MethodcanModifyPublisherHierarchy
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.

Returnbooleanfalse if changing this hierarchy is not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethodaddRootPublisher
Description

Adds a root publisher.

Parametersosid.id.IdpublisherIdthe Id of a publisher
ErrorsALREADY_EXISTSpublisherId is already in hierarchy
NOT_FOUNDpublisherId is not found
NULL_ARGUMENTpublisherId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodremoveRootPublisher
Description

Removes a root publisher.

Parametersosid.id.IdpublisherIdthe Id of a publisher
ErrorsNOT_FOUNDpublisherId is not a root
NULL_ARGUMENTpublisherId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodaddChildPublisher
Description

Adds a child to a publisher.

Parametersosid.id.IdpublisherIdthe Id of a publisher
osid.id.IdchildIdthe Id of the new child
ErrorsALREADY_EXISTSpublisherId is already a parent of childId
NOT_FOUNDpublisherId or childId not found
NULL_ARGUMENTpublisherId or childId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodremoveChildPublisher
Description

Removes a child from a publisher.

Parametersosid.id.IdpublisherIdthe Id of a publisher
osid.id.IdchildIdthe Id of the new child
ErrorsNOT_FOUNDpublisherId not a parent of childId
NULL_ARGUMENTpublisherId or childId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodremoveChildPublishers
Description

Removes all children from a publisher.

Parametersosid.id.IdpublisherIdthe Id of a publisher
ErrorsNOT_FOUNDpublisherId not found
NULL_ARGUMENTpublisherId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.