public interface PathNotificationSession extends OsidSession
This session defines methods to receive notifications on adds/changes
to Path
objects in this Graph.
This also
includes existing paths that may appear or disappear due to changes in the
Graph
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
PathLookupSession.
Modifier and Type | Method and Description |
---|---|
void |
acknowledgePathNotification(Id notificationId)
Acknowledge a path notification.
|
boolean |
canRegisterForPathNotifications()
Tests if this user can register for
Path notifications. |
Graph |
getGraph()
Gets the
Graph associated with this session. |
Id |
getGraphId()
Gets the
Graph Id associated with this
session. |
void |
registerForChangedPath(Id pathId)
Registers for notification of an updated path.
|
void |
registerForChangedPaths()
Registers for notification of updated paths.
|
void |
registerForChangedPathsByGenusType(Type pathGenusType)
Registers for notification of updated paths of the given genus type.
|
void |
registerForChangedPathsForEndingNode(Id nodeId)
Registers for notification of updated paths to the given node.
|
void |
registerForChangedPathsForStartingNode(Id nodeId)
Registers for notification of updated paths from the given node.
|
void |
registerForDeletedPath(Id pathId)
Registers for notification of a deleted path.
|
void |
registerForDeletedPaths()
Registers for notification of deleted paths.
|
void |
registerForDeletedPathsByGenusType(Type pathGenusType)
Registers for notification of deleted paths of the given genus type.
|
void |
registerForDeletedPathsForEndingNode(Id nodeId)
Register for notifications of removed paths to the given node.
|
void |
registerForDeletedPathsForStartingNode(Id nodeId)
Register for notifications of removed paths from the given node.
|
void |
registerForNewPaths()
Register for notifications of new paths.
|
void |
registerForNewPathsByGenusType(Type pathGenusType)
Register for notifications of new paths of the given genus type.
|
void |
registerForNewPathsForEndingNode(Id nodeId)
Register for notifications of new paths to the given node.
|
void |
registerForNewPathsForStartingNode(Id nodeId)
Register for notifications of new paths from the given node.
|
void |
reliablePathNotifications()
Reliable notifications are desired.
|
void |
unreliablePathNotifications()
Unreliable notifications are desired.
|
void |
useFederatedGraphView()
Federates the view for methods in this session.
|
void |
useIsolatedGraphView()
Isolates the view for methods in this session.
|
getAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatType, getLocale, isAuthenticated, startTransaction, supportsTransactions
close
Id getGraphId()
Graph
Id
associated with this
session. Graph Id
associated with this sessionmandatory
- This method must be implemented. Graph getGraph() throws OperationFailedException, PermissionDeniedException
Graph
associated with this session.OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. boolean canRegisterForPathNotifications()
Path
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 useFederatedGraphView()
mandatory
- This method is must be implemented. void useIsolatedGraphView()
mandatory
- This method is must be implemented. void reliablePathNotifications()
acknowledgePathNotification()
.mandatory
- This method is must be implemented. void unreliablePathNotifications()
mandatory
- This method is must be implemented. void acknowledgePathNotification(Id notificationId) throws OperationFailedException, PermissionDeniedException
notificationId
- the Id
of the notificationOperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForNewPaths() throws OperationFailedException, PermissionDeniedException
PathReceiver.newPaths()
is invoked when a new Path
appears in this graph.OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForNewPathsByGenusType(Type pathGenusType) throws OperationFailedException, PermissionDeniedException
PathReceiver.newPaths()
is invoked when a new
Path
is connected to the specified location.pathGenusType
- a path genus typeNullArgumentException
- pathGenusType
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForNewPathsForStartingNode(Id nodeId) throws OperationFailedException, PermissionDeniedException
PathReceiver.newPaths()
is invoked when a new Path
is connected to the specified location.nodeId
- the Id
of the Node
to
monitorNullArgumentException
- nodeId
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForNewPathsForEndingNode(Id nodeId) throws OperationFailedException, PermissionDeniedException
PathReceiver.newPaths()
is invoked when a new Path
is connected to the specified location.nodeId
- the Id
of the Node
to
monitorNullArgumentException
- nodeId
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForChangedPaths() throws OperationFailedException, PermissionDeniedException
PathReceiver.changedPaths()
is invoked when a path in this
graph is changed.OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForChangedPathsByGenusType(Type pathGenusType) throws OperationFailedException, PermissionDeniedException
PathReceiver.changedPaths()
is invoked when a path in
this graph is changed.pathGenusType
- a path genus typeNullArgumentException
- pathGenusType
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForChangedPathsForStartingNode(Id nodeId) throws OperationFailedException, PermissionDeniedException
PathReceiver.changedPaths()
is invoked when a path in
this graph is changed.nodeId
- the Id
of the Node
to
monitorNullArgumentException
- nodeId
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForChangedPathsForEndingNode(Id nodeId) throws OperationFailedException, PermissionDeniedException
PathReceiver.changedPaths()
is invoked when a path in this
graph is changed.nodeId
- the Id
of the Node
to
monitorNullArgumentException
- nodeId
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForChangedPath(Id pathId) throws OperationFailedException, PermissionDeniedException
PathReceiver.changedPaths()
is invoked when the specified path
in this graph is changed.pathId
- the Id
of the Path
to
monitorNullArgumentException
- pathId
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForDeletedPaths() throws OperationFailedException, PermissionDeniedException
PathReceiver.deletedPaths()
is invoked when a path is deleted
or removed from this graph.OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForDeletedPathsByGenusType(Type pathGenusType) throws OperationFailedException, PermissionDeniedException
PathReceiver.deletedPatsh()
is invoked when a path is
deleted or removed from this graph.pathGenusType
- a path genus typeNullArgumentException
- pathGenusType
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForDeletedPathsForStartingNode(Id nodeId) throws OperationFailedException, PermissionDeniedException
PathReceiver.deletedPaths()
is invoked when a new
Path
is removed from the specified location.nodeId
- the Id
of the Node
to
monitorNullArgumentException
- nodeId
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForDeletedPathsForEndingNode(Id nodeId) throws OperationFailedException, PermissionDeniedException
PathReceiver.deletedPaths()
is invoked when a new Path
is removed from the specified location.nodeId
- the Id
of the Node
to
monitorNullArgumentException
- nodeId
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForDeletedPath(Id pathId) throws OperationFailedException, PermissionDeniedException
PathReceiver.deletedPaths()
is invoked when the specified path
is deleted or removed from this graph.pathId
- the Id
of the Path
to
monitorNullArgumentException
- pathId
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented.