Interface PriceScheduleNotificationSession
- All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession
This session defines methods to receive notifications on adds/changes
to PriceSchedule objects. 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.
Notifications are triggered with changes to the PriceSchedule
object itself. Adding and removing orders result in notifications
available from the notification session for orders.
-
Method Summary
Modifier and TypeMethodDescriptionvoidacknowledgePriceScheduleNotification(Id notificationId) Acknowledge a billing notification.booleanTests if this user can register forPriceSchedulenotifications.getStore()Gets theStoreassociated with this session.Gets theStoreIdassociated with this session.voidregisterForChangedPriceSchedule(Id priceScheduleId) Registers for notification of an updated price schedule.voidRegisters for notification of updated price schedules.voidregisterForDeletedPriceSchedule(Id priceScheduleId) Registers for notification of a deleted price schedule.voidRegisters for notification of deleted price schedules.voidRegister for notifications of new prices.voidReliable notifications are desired.voidUnreliable notifications are desired.voidFederates the view for methods in this session.voidIsolates the view for methods in this session.Methods inherited from interface OsidSession
closeMethods inherited from interface OsidSession
getAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatType, getLocale, isAuthenticated, startTransaction, supportsTransactionsModifier and TypeMethodDescriptionGets the agent authenticated to this session.Gets theIdof the agent authenticated to this session.Gets the rate of the service clock.getDate()Gets the service date which may be the current date or the effective date in which this session exists.Gets the effective agent in use by this session.Gets theIdof the effective agent in use by this session.Gets theDisplayTextformatTypepreference in effect for this session.Gets the locale indicating the localization preferences in effect for this session.booleanTests if an agent is authenticated to this session.Starts a new transaction for this sesson.booleanTests for the availability of transactions.
-
Method Details
-
getStoreId
Id getStoreId()Gets theStoreIdassociated with this session.- Returns:
- the
Store Idassociated with this session - Compliance:
mandatory- This method must be implemented.
-
getStore
Gets theStoreassociated with this session.- Returns:
- the store
- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
canRegisterForPriceScheduleNotifications
boolean canRegisterForPriceScheduleNotifications()Tests if this user can register forPriceSchedulenotifications. 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 aPERMISSION_DENIED. This is intended as a hint to an application that may opt not to offer notification operations.- Returns:
falseif notification methods are not authorized,trueotherwise- Compliance:
mandatory- This method must be implemented.
-
useFederatedStoreView
void useFederatedStoreView()Federates the view for methods in this session. A federated view will include price schedules in stores which are children of this store in the store hierarchy.- Compliance:
mandatory- This method is must be implemented.
-
useIsolatedStoreView
void useIsolatedStoreView()Isolates the view for methods in this session. An isolated view restricts searches to this store only.- Compliance:
mandatory- This method is must be implemented.
-
reliablePriceScheduleNotifications
void reliablePriceScheduleNotifications()Reliable notifications are desired. In reliable mode, notifications are to be acknowledged usingacknowledgePriceScheduleNotification().- Compliance:
mandatory- This method is must be implemented.
-
unreliablePriceScheduleNotifications
void unreliablePriceScheduleNotifications()Unreliable notifications are desired. In unreliable mode, notifications do not need to be acknowledged.- Compliance:
mandatory- This method is must be implemented.
-
acknowledgePriceScheduleNotification
void acknowledgePriceScheduleNotification(Id notificationId) throws OperationFailedException, PermissionDeniedException Acknowledge a billing notification.- Parameters:
notificationId- theIdof the notification- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForNewPriceSchedules
Register for notifications of new prices.PriceScheduleReceiver.newPriceSchedules()is invoked when a newPriceScheduleis created.- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForChangedPriceSchedules
Registers for notification of updated price schedules.PriceScheduleReceiver.changedPriceSchedules()is invoked when a price schedule is changed or prices are changed within it.- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForChangedPriceSchedule
void registerForChangedPriceSchedule(Id priceScheduleId) throws NotFoundException, OperationFailedException, PermissionDeniedException Registers for notification of an updated price schedule.PriceScheduleReceiver.changedPriceSchedules()is invoked when the specified price schedule is changed or prices are changed within it.- Parameters:
priceScheduleId- theIdof thePriceScheduleto monitor- Throws:
NotFoundException- a price schedule was not found identified by the givenIdNullArgumentException-priceScheduleIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForDeletedPriceSchedules
Registers for notification of deleted price schedules.PriceScheduleReceiver.deletedPriceSchedules()is invoked when a price schedule is deleted.- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForDeletedPriceSchedule
void registerForDeletedPriceSchedule(Id priceScheduleId) throws NotFoundException, OperationFailedException, PermissionDeniedException Registers for notification of a deleted price schedule.PriceScheduleReceiver.deletedPriceSchedules()is invoked when the specified price schedule is deleted.- Parameters:
priceScheduleId- theIdof thePriceScheduleto monitor- Throws:
NotFoundException- s price schedule was not found identified by the givenIdNullArgumentException-priceScheduleIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-