public interface NodeLookupSession extends OsidSession
This session defines methods for retrieving nodes.
This lookup session defines several views:
Nodes
with the NodeAdminSession.
The methods useFederatedGraphView()
and
useIsolatedGraphView()
behave as a radio group and one should be
selected before invoking any lookup methods.
Nodes may have an additional records indicated by their respective
record types. The record may not be accessed through a cast of the
Nodes.
Modifier and Type | Method and Description |
---|---|
boolean |
canLookupNodes()
Tests if this user can perform
Node lookups. |
Graph |
getGraph()
Gets the
Graph associated with this session. |
Id |
getGraphId()
Gets the
Graph Id associated with this
session. |
Node |
getNode(Id nodeId)
Gets the
Node specified by its Id. |
NodeList |
getNodes()
Gets all
Nodes. |
NodeList |
getNodesByGenusType(Type nodeGenusType)
Gets a
NodeList corresponding to the given node genus
Type which does not include nodes of types derived from
the specified Type. |
NodeList |
getNodesByIds(IdList nodeIds)
Gets a
NodeList corresponding to the given
IdList. |
NodeList |
getNodesByParentGenusType(Type nodeGenusType)
Gets a
NodeList corresponding to the given node genus
Type and include any additional nodes with genus types
derived from the specified Type. |
NodeList |
getNodesByRecordType(Type nodeRecordType)
Gets a
NodeList containing the given node record
Type. |
void |
useComparativeNodeView()
The returns from the lookup methods may omit or translate elements
based on this session, such as authorization, and not result in an
error.
|
void |
useFederatedGraphView()
Federates the view for methods in this session.
|
void |
useIsolatedGraphView()
Isolates the view for methods in this session.
|
void |
usePlenaryNodeView()
A complete view of the
Node returns is desired. |
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 canLookupNodes()
Node
lookups. 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 not offer lookup operations to unauthorized
users. false
if lookup methods are not authorized,
true
otherwisemandatory
- This method must be implemented. void useComparativeNodeView()
mandatory
- This method is must be implemented. void usePlenaryNodeView()
Node
returns is desired. Methods
will return what is requested or result in an error. This view is used
when greater precision is desired at the expense of interoperability.mandatory
- This method is must be implemented. void useFederatedGraphView()
mandatory
- This method is must be implemented. void useIsolatedGraphView()
mandatory
- This method is must be implemented. Node getNode(Id nodeId) throws NotFoundException, OperationFailedException, PermissionDeniedException
Node
specified by its Id.
In
plenary mode, the exact Id
is found or a
NOT_FOUND
results. Otherwise, the returned Node
may have a different Id
than requested, such as the
case where a duplicate Id
was assigned to a Node
and retained for compatibility.nodeId
- the Id
of the Node
to
retrieve Node
NotFoundException
- no Node
found with
the given Id
NullArgumentException
- nodeId
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. NodeList getNodesByIds(IdList nodeIds) throws NotFoundException, OperationFailedException, PermissionDeniedException
NodeList
corresponding to the given
IdList.
In plenary mode, the returned list contains all of the
nodes specified in the Id
list, in the order of the
list, including duplicates, or an error results if an Id
in the supplied list is not found or inaccessible. Otherwise,
inaccessible Nodes
may be omitted from the list and may
present the elements in any order including returning a unique set.nodeIds
- the list of Ids
to retrieve Node
listNotFoundException
- an Id
was not foundNullArgumentException
- nodeIds
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. NodeList getNodesByGenusType(Type nodeGenusType) throws OperationFailedException, PermissionDeniedException
NodeList
corresponding to the given node genus
Type
which does not include nodes of types derived from
the specified Type.
In plenary mode, the returned list
contains all known nodes or an error results. Otherwise, the returned
list may contain only those nodes that are accessible through this
session.nodeGenusType
- a node genus type Node
listNullArgumentException
- nodeGenusType
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. NodeList getNodesByParentGenusType(Type nodeGenusType) throws OperationFailedException, PermissionDeniedException
NodeList
corresponding to the given node genus
Type
and include any additional nodes with genus types
derived from the specified Type.
In plenary mode, the
returned list contains all known nodes or an error results. Otherwise,
the returned list may contain only those nodes that are accessible
through this session.nodeGenusType
- a node genus type Node
listNullArgumentException
- nodeGenusType
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. NodeList getNodesByRecordType(Type nodeRecordType) throws OperationFailedException, PermissionDeniedException
NodeList
containing the given node record
Type.
In plenary mode, the returned list contains all known
nodes or an error results. Otherwise, the returned list may contain
only those nodes that are accessible through this session.nodeRecordType
- a node record type Node
listNullArgumentException
- nodeRecordType
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. NodeList getNodes() throws OperationFailedException, PermissionDeniedException
Nodes.
In plenary mode, the returned list
contains all known nodes or an error results. Otherwise, the returned
list may contain only those nodes that are accessible through this
session. Nodes
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented.