OSID Logo
OSID Specifications
voting package
Version 3.0.0
Release Candidate Preview
Interfaceosid.voting.BallotNotificationSession
Implementsosid.OsidSession
Description

This session defines methods to receive notifications on adds/changes to Ballot objects in this Polls. This also includes existing ballots that may appear or disappear due to changes in the Polls hierarchy, This session is intended for consumers needing to synchronize their state with this service without the use of polling. Notifications are cancelled when this session is closed.

The two views defined in this session correspond to the views in the BallotLookupSession.

MethodgetPollsId
Description

Gets the Polls Id associated with this session.

Returnosid.id.Idthe Polls Id associated with this session
CompliancemandatoryThis method must be implemented.
MethodgetPolls
Description

Gets the Polls associated with this session.

Returnosid.voting.Pollsthe Polls associated with this session
ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodcanRegisterForBallotNotifications
Description

Tests if this user can register for Ballot notifications. A return of true does not guarantee successful authorization. A return of false indicates that it is known all 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 notification operations.

Returnboolean false if notification methods are not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethoduseFederatedPollsView
Description

Federates the view for methods in this session. A federated view will include ballots in polls which are children of this polls in the polls hierarchy.

CompliancemandatoryThis method is must be implemented.
MethoduseIsolatedPollsView
Description

Isolates the view for methods in this session. An isolated view restricts notifications to this polls only.

CompliancemandatoryThis method is must be implemented.
MethodregisterForNewBallots
Description

Register for notifications of new ballots. BallotReceiver.newBallots() is invoked when a new Ballot is appears in this polls.

ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodregisterForChangedBallots
Description

Registers for notification of updated ballots. BallotReceiver.changedBallots() is invoked when a ballot in this polls is changed.

ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodregisterForChangedBallot
Description

Registers for notification of an updated ballot. BallotReceiver.changedBallots() is invoked when the specified ballot in this polls is changed.

Parametersosid.id.IdballotIdthe Id of the Ballot to monitor
ErrorsNULL_ARGUMENT ballotId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodregisterForDeletedBallots
Description

Registers for notification of deleted ballots. BallotReceiver.deletedBallots() is invoked when a ballot is deleted or removed from this polls.

ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodregisterForDeletedBallot
Description

Registers for notification of a deleted ballot. BallotReceiver.deletedBallots() is invoked when the specified ballot is deleted or removed from this polls.

Parametersosid.id.IdballotIdthe Id of the Ballot to monitor
ErrorsNULL_ARGUMENT ballotId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.