OSID Logo
OSID Specifications
subscription rules package
Version 3.1.0
Interfaceosid.subscription.rules.DispatchEnablerPublisherAssignmentSession
Implementsosid.OsidSession
Used Byosid.subscription.rules.SubscriptionRulesManager
osid.subscription.rules.SubscriptionRulesProxyManager
Description

This session provides methods to re-assign DispatchEnabler to Publisher mappings. A DispatchEnabler may appear in multiple Publisher catalogs and removing the last reference to a DispatchEnabler 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 DispatchEnabler to another Publisher is n ot a copy operation (eg: does not change its Id).

MethodcanAssignDispatchEnablers
Description

Tests if this user can alter dispatch enabler/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. T his is intended as a hint to an application that may opt not to offer assignment operations to unauthorized users.

Returnboolean false if mapping is not authorized, true otherwise
Compliancemandatory This method must be implemented.
MethodcanAssignDispatchEnablerToPublisher
Description

Tests if this user can alter dispatch enabler/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. T his is intended as a hint to an application that may opt not to offer assignment operations to unauthorized users.

Parametersosid.id.IdpublisherId the Id of the Publisher
Returnboolean false if mapping is not authorized, true otherwise
ErrorsNULL_ARGUMENT publisherId is null
Compliancemandatory This method must be implemented.
MethodgetAssignablePublisherIds
Description

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

Parametersosid.id.IdpublisherId the Id of the Publisher
Returnosid.id.IdList list of assignable publisher Ids
ErrorsNULL_ARGUMENT publisherId is null
OPERATION_FAILED unable to complete request
Compliancemandatory This method must be implemented.
MethodgetAssignablePublisherIdsForDispatchEnabler
Description

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

Parametersosid.id.IdpublisherId the Id of the Publisher
osid.id.IddispatchEnablerId the Id of the DispatchEnabler
Returnosid.id.IdList list of assignable publisher Ids
ErrorsNULL_ARGUMENT publisherId or dispatchEnablerId is null
OPERATION_FAILED unable to complete request
Compliancemandatory This method must be implemented.
MethodassignDispatchEnablerToPublisher
Description

Adds an existing DispatchEnabler to a Publisher.

Parametersosid.id.IddispatchEnablerId the Id of the DispatchEnabler
osid.id.IdpublisherId the Id of the Publisher
ErrorsALREADY_EXISTS dispatchEnablerId is already assigned to publisherId
NOT_FOUND dispatchEnablerId or publisherId not found
NULL_ARGUMENT dispatchEnablerId or publisherId is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodunassignDispatchEnablerFromPublisher
Description

Removes a DispatchEnabler from a Publisher.

Parametersosid.id.IddispatchEnablerId the Id of the DispatchEnabler
osid.id.IdpublisherId the Id of the Publisher
ErrorsNOT_FOUND dispatchEnablerId or publisherId not found or dispatchEnablerId not assigned to publisherId
NULL_ARGUMENT dispatchEnablerId or publisherId is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodreassignDispatchEnablerToPublisher
Description

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

Parametersosid.id.IddispatchEnablerId the Id of the DispatchEnabler
osid.id.IdfromPublisherId the Id of the current Publisher
osid.id.IdtoPublisherId the Id of the destination Publisher
ErrorsALREADY_EXISTS dispatchEnablerId already assigned to toPublisherId
NOT_FOUND dispatchEnablerId, fromPublisherId, or toPublisherId not found or dispatchEnablerId not mapped to fromPublisherId
NULL_ARGUMENT dispatchEnablerId, fromPublisherId, or toPublisherId is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.