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

This session provides methods to re-assign SubscriptionEnabler to Publisher mappings. A SubscriptionEnabler may appear in multiple Publisher objects and removing the last reference to a SubscriptionEnabler is the equivalent of deleting it. Each Subscription may have its own authorizations governing who is allowed to operate on it.

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

MethodcanAssignSubscriptionEnablers
Description

Tests if this user can alter subscription 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 . This is intended as a hint to an application that may opt not to offer lookup operations to unauthorized users.

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

Tests if this user can alter subscription 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 . This is intended as a hint to an application that may opt not to offer lookup 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 publisher enabler can be assigned.

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

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

Parametersosid.id.IdpublisherIdthe Id of the Publisher
osid.id.IdsubscriptionEnablerIdthe Id of the SubscriptionEnabler
Returnosid.id.IdListlist of assignable publisher Ids
ErrorsNULL_ARGUMENTpublisherId or subscriptionEnablerId is null
OPERATION_FAILEDunable to complete request
CompliancemandatoryThis method must be implemented.
MethodassignSubscriptionEnablerToPublisher
Description

Adds an existing SubscriptionEnabler to a Publisher .

Parametersosid.id.IdsubscriptionEnablerIdthe Id of the SubscriptionEnabler
osid.id.IdpublisherIdthe Id of the Publisher
ErrorsALREADY_EXISTSsubscriptionEnablerId is already assigned to publisherId
NOT_FOUNDsubscriptionEnablerId or publisherId not found
NULL_ARGUMENTsubscriptionEnablerId or publisherId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodunassignSubscriptionEnablerFromPublisher
Description

Removes a SubscriptionEnabler from a Publisher .

Parametersosid.id.IdsubscriptionEnablerIdthe Id of the SubscriptionEnabler
osid.id.IdpublisherIdthe Id of the Publisher
ErrorsNOT_FOUNDsubscriptionEnablerId or publisherId not found or subscriptionEnablerId not assigned to publisherId
NULL_ARGUMENTsubscriptionEnablerId or publisherId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodreassignSubscriptionEnablerToPublisher
Description

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

Parametersosid.id.IdsubscriptionEnablerIdthe Id of the SubscriptionEnabler
osid.id.IdfromPublisherIdthe Id of the current Publisher
osid.id.IdtoPublisherIdthe Id of the destination Publisher
ErrorsALREADY_EXISTSsubscriptionEnablerId already assigned to toPublisherId
NOT_FOUNDsubscriptionEnablerId, fromPublisherId , or toPublisherId not found or subscriptionEnablerId not mapped to fromPublisherId
NULL_ARGUMENTsubscriptionEnablerId, fromPublisherId , or toPublisherId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.