Interface PositionNotificationSession
- All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession
This session defines methods to receive notifications on adds/changes
to Position 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.
-
Method Summary
Modifier and TypeMethodDescriptionvoidacknowledgePositionNotification(Id notificationId) Acknowledge a position notification.booleanTests if this user can register forPositionnotifications.getRealm()Gets theRealmassociated with this session.Gets theRealmIdassociated with this session.voidregisterForChangedPosition(Id positionId) Registers for notification of an updated position.voidRegisters for notification of updated positions.voidregisterForChangedPositionsForOrganization(Id organizationId) Register for notifications of changed positions for the given organization.voidregisterForDeletedPosition(Id positionId) Registers for notification of a deleted position.voidRegisters for notification of deleted positions.voidregisterForDeletedPositionsForOrganization(Id organizationId) Register for notifications of deleted positions for the given organization.voidRegister for notifications of new positions.voidregisterForNewPositionsForOrganization(Id organizationId) Register for notifications of new positions for an organization.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
-
getRealmId
Id getRealmId()Gets theRealmIdassociated with this session.- Returns:
- the
Realm Idassociated with this session - Compliance:
mandatory- This method must be implemented.
-
getRealm
Gets theRealmassociated with this session.- Returns:
- the realm
- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
canRegisterForPositionNotifications
boolean canRegisterForPositionNotifications()Tests if this user can register forPositionnotifications. 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.
-
useFederatedRealmView
void useFederatedRealmView()Federates the view for methods in this session. A federated view will include notifications for positions in realms which are children of this realm in the realm hierarchy.- Compliance:
mandatory- This method is must be implemented.
-
useIsolatedRealmView
void useIsolatedRealmView()Isolates the view for methods in this session. An isolated view restricts notifications to this realm only.- Compliance:
mandatory- This method is must be implemented.
-
reliablePositionNotifications
void reliablePositionNotifications()Reliable notifications are desired. In reliable mode, notifications are to be acknowledged usingacknowledgePositionNotification().- Compliance:
mandatory- This method is must be implemented.
-
unreliablePositionNotifications
void unreliablePositionNotifications()Unreliable notifications are desired. In unreliable mode, notifications do not need to be acknowledged.- Compliance:
mandatory- This method is must be implemented.
-
acknowledgePositionNotification
void acknowledgePositionNotification(Id notificationId) throws OperationFailedException, PermissionDeniedException Acknowledge a position notification.- Parameters:
notificationId- theIdof the notification- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForNewPositions
Register for notifications of new positions.PositionReceiver.newPositions()is invoked when a newPositionis appears in this realm.- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForNewPositionsForOrganization
void registerForNewPositionsForOrganization(Id organizationId) throws OperationFailedException, PermissionDeniedException Register for notifications of new positions for an organization.PositionReceiver.newPositions()is invoked when a newPositionappears in this realm.- Parameters:
organizationId- an organization to monitor- Throws:
NullArgumentException-organizationIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForChangedPositions
Registers for notification of updated positions.PositionReceiver.changedPositions()is invoked when a position in this realm is changed.- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForChangedPositionsForOrganization
void registerForChangedPositionsForOrganization(Id organizationId) throws OperationFailedException, PermissionDeniedException Register for notifications of changed positions for the given organization.PositionReceiver.changedPositions()is invoked when aPositionfor the organization in this realm is changed.- Parameters:
organizationId- an organization to monitor- Throws:
NullArgumentException-organizationIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForChangedPosition
void registerForChangedPosition(Id positionId) throws NotFoundException, OperationFailedException, PermissionDeniedException Registers for notification of an updated position.PositionReceiver.changedPositions()is invoked when the specified position in this realm is changed.- Parameters:
positionId- theIdof thePositionto monitor- Throws:
NotFoundException- a position was not found identified by the givenIdNullArgumentException-positionIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForDeletedPositions
Registers for notification of deleted positions.PositionReceiver.deletedPositions()is invoked when a position is removed from this realm.- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForDeletedPositionsForOrganization
void registerForDeletedPositionsForOrganization(Id organizationId) throws OperationFailedException, PermissionDeniedException Register for notifications of deleted positions for the given organization.PositionReceiver.deletedPositions()is invoked when aPositionfor the organization is removed from this realm.- Parameters:
organizationId- an organization to monitor- Throws:
NullArgumentException-organizationIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForDeletedPosition
void registerForDeletedPosition(Id positionId) throws NotFoundException, OperationFailedException, PermissionDeniedException Registers for notification of a deleted position.PositionReceiver.deletedPositions()is invoked when the specified position is removed from this realm.- Parameters:
positionId- theIdof thePositionto monitor- Throws:
NotFoundException- a position was not found identified by the givenIdNullArgumentException-positionIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-