Interface ProficiencyNotificationSession
- All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession
This session defines methods to receive notifications on adds/changes
to Proficiencies . in this ObjectiveBank . This also
includes existing proficiencies that may appear or disappear due to
changes in the ObjectiveBank 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
ProficiencyLookupSession .
-
Method Summary
Modifier and TypeMethodDescriptionvoidacknowledgeProficiencyNotification(Id notificationId) Acknowledge a proficiency notification.booleanTests if this user can register forProficiencynotifications.Gets theObjectiveBankassociated with this session.Gets theObjectiveBankIdassociated with this session.voidRegisters for notification of updated proficiencies.voidregisterForChangedProficienciesByGenusType(Type proficiencyGenusType) Registers for notification of updated proficiencies of the given genus type.voidregisterForChangedProficienciesForObjective(Id objectiveId) Registers for notification of an updated proficiency.voidregisterForChangedProficienciesForResource(Id resourceId) Registers for notification of an updated proficiency.voidregisterForChangedProficiency(Id proficiencyId) Registers for notification of an updated proficiency.voidRegisters for notification of deleted proficiencies.voidregisterForDeletedProficienciesByGenusType(Type proficiencyGenusType) Registers for notification of deleted proficiencies of the given genus type.voidregisterForDeletedProficienciesForObjective(Id objectiveId) Registers for notification of a deleted proficiency.voidregisterForDeletedProficienciesForResource(Id resourceId) Registers for notification of a deleted proficiency.voidregisterForDeletedProficiency(Id proficiencyId) Registers for notification of a deleted proficiency.voidRegister for notifications of new proficiencies.voidregisterForNewProficienciesByGenusType(Type proficiencyGenusType) Register for notifications of new proficiencies with the given genus type.voidregisterForNewProficienciesForObjective(Id objectiveId) Register for notifications of new proficiencies.voidregisterForNewProficienciesForResource(Id resourceId) Register for notifications of new proficiencies.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
-
getObjectiveBankId
Id getObjectiveBankId()Gets theObjectiveBankIdassociated with this session.- Returns:
- the
ObjectiveBank Idassociated with this session - Compliance:
mandatory- This method must be implemented.
-
getObjectiveBank
Gets theObjectiveBankassociated with this session.- Returns:
- the obective bank
- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
canRegisterForProficiencyNotifications
boolean canRegisterForProficiencyNotifications()Tests if this user can register forProficiencynotifications. 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.
-
useFederatedObjectiveBankView
void useFederatedObjectiveBankView()Federates the view for methods in this session. A federated view will include proficiencies in objective banks which are children of this objective bank in the obective bank hierarchy.- Compliance:
mandatory- This method is must be implemented.
-
useIsolatedObjectiveBankView
void useIsolatedObjectiveBankView()Isolates the view for methods in this session. An isolated view restricts notifications to this objective bank only.- Compliance:
mandatory- This method is must be implemented.
-
reliableProficiencyNotifications
void reliableProficiencyNotifications()Reliable notifications are desired. In reliable mode, notifications are to be acknowledged usingacknowledgeProficiencyNotification().- Compliance:
mandatory- This method is must be implemented.
-
unreliableProficiencyNotifications
void unreliableProficiencyNotifications()Unreliable notifications are desired. In unreliable mode, notifications do not need to be acknowledged.- Compliance:
mandatory- This method is must be implemented.
-
acknowledgeProficiencyNotification
void acknowledgeProficiencyNotification(Id notificationId) throws OperationFailedException, PermissionDeniedException Acknowledge a proficiency notification.- Parameters:
notificationId- theIdof the notification- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForNewProficiencies
Register for notifications of new proficiencies.ProficiencyReceiver.newProficiencies()is invoked when a newProficiencyappears in this objective bank.- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForNewProficienciesByGenusType
void registerForNewProficienciesByGenusType(Type proficiencyGenusType) throws OperationFailedException, PermissionDeniedException Register for notifications of new proficiencies with the given genus type.ProficiencyReceiver.newProficiencies()is invoked when a newProficiencyappears for the given resource in this objective bank.- Parameters:
proficiencyGenusType- the genus type of a proficiency to monitor- Throws:
NullArgumentException-proficiencyGenusTypeisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForNewProficienciesForObjective
void registerForNewProficienciesForObjective(Id objectiveId) throws OperationFailedException, PermissionDeniedException Register for notifications of new proficiencies.ProficiencyReceiver.newProficiencies()is invoked when a newProficiencyappears for the given objective in this objective bank.- Parameters:
objectiveId- theIdof a resource to monitor- Throws:
NullArgumentException-objectiveIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForNewProficienciesForResource
void registerForNewProficienciesForResource(Id resourceId) throws OperationFailedException, PermissionDeniedException Register for notifications of new proficiencies.ProficiencyReceiver.newProficiencies()is invoked when a newProficiencyappears for the given resource in this objective bank.- Parameters:
resourceId- theIdof a resource to monitor- Throws:
NullArgumentException-resourceIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForChangedProficiencies
Registers for notification of updated proficiencies.ProficiencyReceiver.changedProficiencies()is invoked when a proficiency in this objective bank is changed.- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForChangedProficienciesByGenusType
void registerForChangedProficienciesByGenusType(Type proficiencyGenusType) throws OperationFailedException, PermissionDeniedException Registers for notification of updated proficiencies of the given genus type.ProficiencyReceiver.changedProficiencies()is invoked when a proficiency in this objective bank is changed.- Parameters:
proficiencyGenusType- the genus type of theProficiencyto monitor- Throws:
NullArgumentException-proficiencyGenusTYpeisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForChangedProficienciesForObjective
void registerForChangedProficienciesForObjective(Id objectiveId) throws OperationFailedException, PermissionDeniedException Registers for notification of an updated proficiency.ProficiencyReceiver.changedProficiencies()is invoked when the specified proficiency related to the given objective is changed in this objective bank.- Parameters:
objectiveId- theIdof theObjectiveto monitor- Throws:
NullArgumentException-objectiveIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForChangedProficienciesForResource
void registerForChangedProficienciesForResource(Id resourceId) throws OperationFailedException, PermissionDeniedException Registers for notification of an updated proficiency.ProficiencyReceiver.changedProficiencies()is invoked when the specified proficiency related to the given resource is changed in this objective bank.- Parameters:
resourceId- theIdof theResourceto monitor- Throws:
NullArgumentException-resourceIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForChangedProficiency
void registerForChangedProficiency(Id proficiencyId) throws OperationFailedException, PermissionDeniedException Registers for notification of an updated proficiency.ProficiencyReceiver.changedProficiencies()is invoked when the specified proficiency in this objective bank is changed.- Parameters:
proficiencyId- theIdof theProficiencyto monitor- Throws:
NullArgumentException-proficiencyIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForDeletedProficiencies
Registers for notification of deleted proficiencies.ProficiencyReceiver.deletedProficiencies()is invoked when a proficiency is deleted or removed from this objective bank.- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForDeletedProficienciesByGenusType
void registerForDeletedProficienciesByGenusType(Type proficiencyGenusType) throws OperationFailedException, PermissionDeniedException Registers for notification of deleted proficiencies of the given genus type.ProficiencyReceiver.deletedProficiencies()is invoked when a proficiency is deleted or removed from this objective bank.- Parameters:
proficiencyGenusType- the genus type of theProficiencyto monitor- Throws:
NullArgumentException-proficiencyGenusTypeisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForDeletedProficienciesForObjective
void registerForDeletedProficienciesForObjective(Id objectiveId) throws OperationFailedException, PermissionDeniedException Registers for notification of a deleted proficiency.ProficiencyReceiver.deletedProficiencies()is invoked when the specified proficiency related to the objective is deleted or removed from this objective bank.- Parameters:
objectiveId- theIdof theObjectiveto monitor- Throws:
NullArgumentException-objectiveIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForDeletedProficienciesForResource
void registerForDeletedProficienciesForResource(Id resourceId) throws OperationFailedException, PermissionDeniedException Registers for notification of a deleted proficiency.ProficiencyReceiver.deletedProficiencies()is invoked when the specified proficiency related to the resource is deleted or removed from this objective bank.- Parameters:
resourceId- theIdof theResourceto monitor- Throws:
NullArgumentException-resourceIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForDeletedProficiency
void registerForDeletedProficiency(Id proficiencyId) throws OperationFailedException, PermissionDeniedException Registers for notification of a deleted proficiency.ProficiencyReceiver.deletedProficiencies()is invoked when the specified proficiency is deleted or removed from this objective bank.- Parameters:
proficiencyId- theIdof theProficiencyto monitor- Throws:
NullArgumentException-proficiencyIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-