OSID Logo
OSID Specifications
subscription rules package
Version 3.0.0
Release Candidate Preview
Interfaceosid.subscription.rules.SubscriptionEnablerSmartPublisherSession
Implementsosid.OsidSession
Description

This session manages queries and sequencing to create "smart" dynamic publishers. A SubscriptionEnablerQuery can be retrieved from this session and mapped to this Publisher to create a virtual collection of subscription enablers. The subscription enablers may be sequenced using the SubscriptionEnablerSearchOrder from this session.

This Publisher has a default query that matches any subscription enabler and a default search order that specifies no sequencing. The queries may be examined using a SubscriptionEnablerQueryInspector. The query may be modified by converting the inspector back to a SubscriptionEnablerQuery.

MethodgetPublisherId
Description

Gets the Publisher Id associated with this session.

Returnosid.id.Idthe Publisher Id associated with this session
CompliancemandatoryThis method must be implemented.
MethodgetPublisher
Description

Gets the Publisher associated with this session.

Returnosid.subscription.Publisherthe publisher
ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodcanManageSmartPublishers
Description

Tests if this user can manage smart publishers. A return of true does not guarantee successful authorization. A return of false indicates that it is known 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 operations to unauthorized users.

Returnboolean false if smart publisher management is not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethodgetSubscriptionEnablerQuery
Description

Gets a subscription enabler query.

Returnosid.subscription.rules.SubscriptionEnablerQuerythe subscription enabler query
CompliancemandatoryThis method must be implemented.
MethodgetSubscriptionEnablerSearchOrder
Description

Gets a subscription enabler search order.

Returnosid.subscription.rules.SubscriptionEnablerSearchOrderthe subscription enabler search order
CompliancemandatoryThis method must be implemented.
MethodapplySubscriptionEnablerQuery
Description

Applies a subscription enabler query to this publisher.

Parametersosid.subscription.rules.SubscriptionEnablerQuerysubscriptionEnablerQuerythe subscription enabler query
ErrorsNULL_ARGUMENT subscriptionEnablerQuery is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure occurred
UNSUPPORTED subscriptionEnablerQuery not of this service
CompliancemandatoryThis method must be implemented.
MethodinspectSubscriptionEnablerQuery
Description

Gets a subscription enabler query inspector for this publisher.

Returnosid.subscription.rules.SubscriptionEnablerQueryInspectorthe subscription enabler query inspector
ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure occurred
CompliancemandatoryThis method must be implemented.
MethodapplySubscriptionEnablerSequencing
Description

Applies a subscription enabler search order to this publisher.

Parametersosid.subscription.rules.SubscriptionEnablerSearchOrdersubscriptionEnablerSearchOrderthe subscription enabler search order
ErrorsNULL_ARGUMENT subscriptionEnablerSearchOrder is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure occurred
UNSUPPORTED subscriptionEnablerSearchOrder not of this service
CompliancemandatoryThis method must be implemented.
MethodgetSubscriptionEnablerQueryFromInspector
Description

Gets a subscription enabler query from an inspector.

Parametersosid.subscription.rules.SubscriptionEnablerQueryInspectorsubscriptionEnablerQueryInspectora subscription enabler query inspector
Returnosid.subscription.rules.SubscriptionEnablerQuerythe subscription enabler query
ErrorsNULL_ARGUMENT subscriptionEnablerQueryInspector is null
UNSUPPORTED subscriptionEnablerQueryInspector is not of this service
CompliancemandatoryThis method must be implemented.