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

This session provides methods to re-assign Dispatches to Publishers . A Dispatch may map to multiple Publishers and removing the last reference to a Dispatch is the equivalent of deleting it. Each Publisher may have its own authorizations governing who is allowed to operate on it.

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

MethodcanAssignDispatches
Description

Tests if this user can alter dispatch/publisher 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 assignment operations to unauthorized users.

Returnbooleanfalse if mapping is not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethodcanAssignDispatchesToPublisher
Description

Tests if this user can alter dispatch/publisher 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 assignment operations to unauthorized users.

Parametersosid.id.IdpublisherIdthe Id of the Publisher
Returnbooleanfalse if mapping is not authorized, true otherwise
ErrorsNULL_ARGUMENTpublisherId is null
CompliancemandatoryThis method must be implemented.
MethodgetAssignablePublisherIds
Description

Gets a list of publishers including and under the given publisher node in which any dispatch can be assigned.

Parametersosid.id.IdpublisherIdthe Id of the Publisher
Returnosid.id.IdListlist of assignable publisher Ids
ErrorsNULL_ARGUMENTpublisherId is null
OPERATION_FAILEDunable to complete request
CompliancemandatoryThis method must be implemented.
MethodgetAssignablePublisherIdsForDispatch
Description

Gets a list of publishers including and under the given publisher node in which a specific dispatch can be assigned.

Parametersosid.id.IdpublisherIdthe Id of the Publisher
osid.id.IddispatchIdthe Id of the Dispatch
Returnosid.id.IdListlist of assignable publisher Ids
ErrorsNULL_ARGUMENTpublisherId or dispatchId is null
OPERATION_FAILEDunable to complete request
CompliancemandatoryThis method must be implemented.
MethodassignDispatchToPublisher
Description

Adds an existing Dispatch to a Publisher .

Parametersosid.id.IddispatchIdthe Id of the Dispatch
osid.id.IdpublisherIdthe Id of the Publisher
ErrorsALREADY_EXISTSdispatchId is already assigned to publisherId
NOT_FOUNDdispatchId or publisherId not found
NULL_ARGUMENTdispatchId or publisherId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodunassignDispatchFromPublisher
Description

Removes a Dispatch from a Publisher .

Parametersosid.id.IddispatchIdthe Id of the Dispatch
osid.id.IdpublisherIdthe Id of the Publisher
ErrorsNOT_FOUNDdispatchId or publisherId not found or dispatchId not assigned to publisherId
NULL_ARGUMENTdispatchId or publisherId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodreassignDispatchToPublisher
Description

Moves a Dispatch from one Publisher to another. Mappings to other Publishers are unaffected.

Parametersosid.id.IddispatchIdthe Id of the Dispatch
osid.id.IdfromPublisherIdthe Id of the current Publisher
osid.id.IdtoPublisherIdthe Id of the destination Publisher
ErrorsALREADY_EXISTSdispatchId already assigned to toPublisherId
NOT_FOUNDdispatchId, fromPublisherId , or toPublisherId not found or dispatchId , not mapped to fromPublisherId
NULL_ARGUMENTdispatchId, fromPublisherId , or toPublisherId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.