public interface HoldNotificationSession extends OsidSession
This session defines methods to receive notifications on adds/changes
to Hold
objects in this Oubliette.
This also
includes existing holds that may appear or disappear due to changes in the
Oubliette
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
HoldLookupSession.
Modifier and Type | Method and Description |
---|---|
void |
acknowledgeHoldNotification(Id notificationId)
Acknowledge a hold notification.
|
boolean |
canRegisterForHoldNotifications()
Tests if this user can register for
Hold notifications. |
Oubliette |
getOubliette()
Gets the
Oubliette associated with this session. |
Id |
getOublietteId()
Gets the
Oubliette Id associated with
this session. |
void |
registerForChangedHold(Id holdId)
Registers for notification of an updated hold.
|
void |
registerForChangedHolds()
Registers for notification of updated holds.
|
void |
registerForChangedHoldsForIssue(Id issueId)
Register for notifications of updated holds for the given issue
Id. |
void |
registerForChangedHoldsForResource(Id resourceId)
Register for notifications of updated holds for the given resource
Id including any holds for agents related to the
resource. |
void |
registerForDeletedHold(Id holdId)
Registers for notification of a deleted hold.
|
void |
registerForDeletedHolds()
Registers for notification of deleted holds.
|
void |
registerForDeletedHoldsForIssue(Id issueId)
Register for notifications of deleted holds for the given issue
Id. |
void |
registerForDeletedHoldsForResource(Id resourceId)
Register for notifications of deleted holds for the given resource
Id including any holds for agents related to the
resource. |
void |
registerForNewHolds()
Register for notifications of new holds.
|
void |
registerForNewHoldsForIssue(Id issueId)
Register for notifications of new holds for the given issue
Id. |
void |
registerForNewHoldsForResource(Id resourceId)
Register for notifications of new holds for the given resource
Id including any holds for agents related to the resource. |
void |
reliableHoldNotifications()
Reliable notifications are desired.
|
void |
unreliableHoldNotifications()
Unreliable notifications are desired.
|
void |
useFederatedOublietteView()
Federates the view for methods in this session.
|
void |
useIsolatedOublietteView()
Isolates the view for methods in this session.
|
getAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatType, getLocale, isAuthenticated, startTransaction, supportsTransactions
close
Id getOublietteId()
Oubliette
Id
associated with
this session. Oubliette Id
associated with this sessionmandatory
- This method must be implemented. Oubliette getOubliette() throws OperationFailedException, PermissionDeniedException
Oubliette
associated with this session.OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. boolean canRegisterForHoldNotifications()
Hold
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. false
if notification methods are not
authorized, true
otherwisemandatory
- This method must be implemented. void useFederatedOublietteView()
mandatory
- This method is must be implemented. void useIsolatedOublietteView()
mandatory
- This method is must be implemented. void reliableHoldNotifications()
acknowledgeHoldNotification()
.mandatory
- This method is must be implemented. void unreliableHoldNotifications()
mandatory
- This method is must be implemented. void acknowledgeHoldNotification(Id notificationId) throws OperationFailedException, PermissionDeniedException
notificationId
- the Id
of the notificationOperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForNewHolds() throws OperationFailedException, PermissionDeniedException
HoldReceiver.newHolds()
is invoked when a new Hold
appears in this oubliette.OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForNewHoldsForResource(Id resourceId) throws OperationFailedException, PermissionDeniedException
Id
including any holds for agents related to the resource.
HoldReceiver.newHolds()
is invoked when a new
Hold
is created.resourceId
- the Id
of the resource to monitorNullArgumentException
- resourceId
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForNewHoldsForIssue(Id issueId) throws OperationFailedException, PermissionDeniedException
Id.
HoldReceiver.newHolds()
is invoked when a new
Hold
is created.issueId
- the Id
of the issue to monitorNullArgumentException
- issueid
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForChangedHolds() throws OperationFailedException, PermissionDeniedException
HoldReceiver.changedHolds()
is invoked when a hold in this
oubliette is changed.OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForChangedHoldsForResource(Id resourceId) throws OperationFailedException, PermissionDeniedException
Id
including any holds for agents related to the
resource. HoldReceiver.changedHolds()
is invoked when a
Hold
in this oubliette is changed.resourceId
- the Id
of the resource to monitorNullArgumentException
- resourceId
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForChangedHoldsForIssue(Id issueId) throws OperationFailedException, PermissionDeniedException
Id.
HoldReceiver.changedHolds()
is invoked when
a Hold
in this oubliette is changed.issueId
- the Id
of the issue to monitorNullArgumentException
- issueId
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForChangedHold(Id holdId) throws NotFoundException, OperationFailedException, PermissionDeniedException
HoldReceiver.changedHolds()
is invoked when the specified hold
in this oubliette is changed.holdId
- the Id
of the Hold
to
monitorNotFoundException
- a hold was not found in this
oubliette identified by the given Id
NullArgumentException
- holdId
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForDeletedHolds() throws OperationFailedException, PermissionDeniedException
HoldReceiver.deletedHolds()
is invoked when a hold is deleted
or removed from this oubliette.OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForDeletedHoldsForResource(Id resourceId) throws OperationFailedException, PermissionDeniedException
Id
including any holds for agents related to the
resource. HoldReceiver.deletedHolds()
is invoked when a
Hold
is deleted or removed from this oubliette.resourceId
- the Id
of the resource to monitorNullArgumentException
- resourceId
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForDeletedHoldsForIssue(Id issueId) throws OperationFailedException, PermissionDeniedException
Id.
HoldReceiver.deletedHolds()
is invoked when
a Hold
is deleted or removed from this oubliette.issueId
- the Id
of the issue to monitorNullArgumentException
- issueId
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForDeletedHold(Id holdId) throws NotFoundException, OperationFailedException, PermissionDeniedException
HoldReceiver.deletedHolds()
is invoked when the specified hold
is deleted or removed from this oubliette.holdId
- the Id
of the Hold
to
monitorNotFoundException
- a hold was not found identified by
the given Id
NullArgumentException
- holdId
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented.