public interface EdgeLookupSession extends OsidSession
This session provides methods for retrieving Edge
objects. The Edge
represents a connection between two
Nodes.
This session defines views that offer differing behaviors when retrieving multiple objects.
Edges
with the EdgeAdminSession.
Generally, the comparative view should be used for most applications
as it permits operation even if there is data that cannot be accessed. The
methods useFederatedGraphView()
and
useIsolatedGraphView()
behave as a radio group and one should be
selected before invoking any lookup methods.
Modifier and Type | Method and Description |
---|---|
boolean |
canLookupEdges()
Tests if this user can perform
Edge lookups. |
Edge |
getEdge(Id edgeId)
Gets the
Edge specified by its Id. |
EdgeList |
getEdges()
Gets all
Edges. |
EdgeList |
getEdgesByGenusType(Type edgeGenusType)
Gets an
EdgeList corresponding to the given edge genus
Type which does not include edges of genus types
derived from the specified Type. |
EdgeList |
getEdgesByGenusTypeForDestinationNode(Id destinationNodeId,
Type edgeGenusType)
Gets an
EdgeList corresponding to the given destination
node Id and edge genus Type and includes
any genus types derived from the given genus type. |
EdgeList |
getEdgesByGenusTypeForDestinationNodeOnDate(Id destinationNodeId,
Type edgeGenusType,
DateTime from,
DateTime to)
Gets an
EdgeList with the given genus type and
effective during the entire given date range inclusive but not
confined to the date range. |
EdgeList |
getEdgesByGenusTypeForNodes(Id sourceNodeId,
Id destinationNodeId,
Type edgeGenusType)
Gets an EdgeList corresponding to the given peer
Ids
and edge genus type and includes and genus types derived from the
given genus type. |
EdgeList |
getEdgesByGenusTypeForNodesOnDate(Id sourceNodeId,
Id destinationNodeId,
Type edgeGenusType,
DateTime from,
DateTime to)
Gets an
EdgeList of the given genus type effective
during the entire given date range inclusive but not confined to the
date range. |
EdgeList |
getEdgesByGenusTypeForSourceNode(Id sourceNodeId,
Type edgeGenusType)
Gets an
EdgeList corresponding to the given source node
Id and edge genus Type and includes any
genus types derived from the given genus type. |
EdgeList |
getEdgesByGenusTypeForSourceNodeOnDate(Id nodeId,
Type edgeGenusType,
DateTime from,
DateTime to)
Gets an
EdgeList with the given genus type and
effective during the entire given date range inclusive but not
confined to the date range. |
EdgeList |
getEdgesByGenusTypeOnDate(Type edgeGenusType,
DateTime from,
DateTime to)
Gets an
EdgeList of a genus type effective during the
entire given date range inclusive but not confined to the date range. |
EdgeList |
getEdgesByIds(IdList edgeIds)
Gets an
EdgeList corresponding to the given
IdList. |
EdgeList |
getEdgesByParentGenusType(Type edgeGenusType)
Gets an
EdgeList corresponding to the given edge genus
Type and include any additional edges with genus types
derived from the specified Type. |
EdgeList |
getEdgesByRecordType(Type edgeRecordType)
Gets an
EdgeList containing the given edge record
Type. |
EdgeList |
getEdgesForDestinationNode(Id destinationNodeId)
Gets an
EdgeList corresponding to the given destination
node Id. |
EdgeList |
getEdgesForDestinationNodeOnDate(Id destinationNodeId,
DateTime from,
DateTime to)
Gets an
EdgeList effective during the entire given date
range inclusive but not confined to the date range. |
EdgeList |
getEdgesForNodes(Id sourceNodeId,
Id destinationNodeId)
Gets an EdgeList corresponding to the given node
Ids. |
EdgeList |
getEdgesForNodesOnDate(Id sourceNodeId,
Id destinationNodeId,
DateTime from,
DateTime to)
Gets an
EdgeList effective during the entire given date
range inclusive but not confined to the date range. |
EdgeList |
getEdgesForSourceNode(Id sourceNodeId)
Gets an
EdgeList corresponding to the given source node
Id. |
EdgeList |
getEdgesForSourceNodeOnDate(Id sourceNodeId,
DateTime from,
DateTime to)
Gets an
EdgeList with effective during the entire given
date range inclusive but not confined to the date range. |
EdgeList |
getEdgesOnDate(DateTime from,
DateTime to)
Gets an
EdgeList effective during the entire given date
range inclusive but not confined to the date range. |
Graph |
getGraph()
Gets the
Graph associated with this session. |
Id |
getGraphId()
Gets the
Graph Id associated with this
session. |
void |
useAnyEffectiveEdgeView()
All edges of any effective dates are returned by all methods in this
session.
|
void |
useComparativeEdgeView()
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 |
useEffectiveEdgeView()
Only edges whose effective dates are current are returned by methods
in this session.
|
void |
useFederatedGraphView()
Federates the view for methods in this session.
|
void |
useIsolatedGraphView()
Isolates the view for methods in this session.
|
void |
usePlenaryEdgeView()
A complete view of the
Edge 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 canLookupEdges()
Edge
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 opt not to offer lookup operations to
unauthorized users. false
if lookup methods are not authorized,
true
otherwisemandatory
- This method must be implemented. void useComparativeEdgeView()
mandatory
- This method is must be implemented. void usePlenaryEdgeView()
Edge
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. void useEffectiveEdgeView()
mandatory
- This method is must be implemented. void useAnyEffectiveEdgeView()
mandatory
- This method is must be implemented. Edge getEdge(Id edgeId) throws NotFoundException, OperationFailedException, PermissionDeniedException
Edge
specified by its Id.
In plenary mode, the exact Id
is found
or a NOT_FOUND
results. Otherwise, the returned
Edge
may have a different Id
than requested,
such as the case where a duplicate Id
was assigned to
an Edge
and retained for compatibility.
In effective mode, edges are returned that are currently effective. In
any effective mode, effective edges and those currently expired are
returned.edgeId
- Id
of the Edge
NotFoundException
- edgeId
not foundNullArgumentException
- edgeId
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method is must be implemented. EdgeList getEdgesByIds(IdList edgeIds) throws NotFoundException, OperationFailedException, PermissionDeniedException
EdgeList
corresponding to the given
IdList.
In plenary mode, the returned list contains all of the
edges 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 Edges
may be omitted from the list and may
present the elements in any order including returning a unique set.
In effective mode, edges are returned that are currently effective. In
any effective mode, effective edges and those currently expired are
returned.edgeIds
- the list of Ids
to retrieve Edge
listNotFoundException
- an Id was
not foundNullArgumentException
- edgeIds
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. EdgeList getEdgesByGenusType(Type edgeGenusType) throws OperationFailedException, PermissionDeniedException
EdgeList
corresponding to the given edge genus
Type
which does not include edges of genus types
derived from the specified Type.
In plenary mode, the returned list contains all known
edges or an error results. Otherwise, the returned list may contain
only those edges that are accessible through this session.
In effective mode, edges are returned that are currently effective. In
any effective mode, effective edges and those currently expired are
returned.edgeGenusType
- an edge genus type Edge
listNullArgumentException
- edgeGenusType
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. EdgeList getEdgesByParentGenusType(Type edgeGenusType) throws OperationFailedException, PermissionDeniedException
EdgeList
corresponding to the given edge genus
Type
and include any additional edges with genus types
derived from the specified Type.
In plenary mode, the returned list contains all known
edges or an error results. Otherwise, the returned list may contain
only those edges that are accessible through this session.
In effective mode, edges are returned that are currently effective. In
any effective mode, effective edges and those currently expired are
returned.edgeGenusType
- an edge genus type Edge
listNullArgumentException
- edgeGenusType
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. EdgeList getEdgesByRecordType(Type edgeRecordType) throws OperationFailedException, PermissionDeniedException
EdgeList
containing the given edge record
Type.
In plenary mode, the returned list contains all known
edges or an error results. Otherwise, the returned list may contain
only those edges that are accessible through this session.
In effective mode, edges are returned that are currently effective. In
any effective mode, effective edges and those currently expired are
returned.edgeRecordType
- an edge record type Edge
listNullArgumentException
- edgeRecordType
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. EdgeList getEdgesOnDate(DateTime from, DateTime to) throws OperationFailedException, PermissionDeniedException
EdgeList
effective during the entire given date
range inclusive but not confined to the date range.
In plenary mode, the returned list contains all known
edges or an error results. Otherwise, the returned list may contain
only those edges that are accessible through this session.
In effective mode, edges are returned that are currently effective. In
any effective mode, effective edges and those currently expired are
returned.from
- starting dateto
- ending date Edge
listInvalidArgumentException
- from
is
greater than to
NullArgumentException
- from
or
to
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. EdgeList getEdgesByGenusTypeOnDate(Type edgeGenusType, DateTime from, DateTime to) throws OperationFailedException, PermissionDeniedException
EdgeList
of a genus type effective during the
entire given date range inclusive but not confined to the date range.
In plenary mode, the returned list contains all known
edges or an error results. Otherwise, the returned list may contain
only those edges that are accessible through this session.
In effective mode, edges are returned that are currently effective. In
any effective mode, effective edges and those currently expired are
returned.edgeGenusType
- an edge genus typefrom
- starting dateto
- ending date Edge
listInvalidArgumentException
- from
is
greater than to
NullArgumentException
- edgeGenusType, from,
or to
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. EdgeList getEdgesForSourceNode(Id sourceNodeId) throws OperationFailedException, PermissionDeniedException
EdgeList
corresponding to the given source node
Id.
In plenary mode, the returned list contains all of the
edges corresponding to the given peer, including duplicates, or an
error results if an edge is inaccessible. Otherwise, inaccessible
Edges
may be omitted from the list and may present the
elements in any order including returning a unique set.
In effective mode, edges are returned that are currently effective. In
any effective mode, effective edges and those currently expired are
returned.sourceNodeId
- a node Id
NullArgumentException
- sourceNodeId
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. EdgeList getEdgesForSourceNodeOnDate(Id sourceNodeId, DateTime from, DateTime to) throws OperationFailedException, PermissionDeniedException
EdgeList
with effective during the entire given
date range inclusive but not confined to the date range.
In plenary mode, the returned list contains all known
edges or an error results. Otherwise, the returned list may contain
only those edges that are accessible through this session.
In effective mode, edges are returned that are currently effective. In
any effective mode, effective edges and those currently expired are
returned.sourceNodeId
- a node Id
from
- starting dateto
- ending dateInvalidArgumentException
- from
is
greater than to
NullArgumentException
- sourceNodeId, from
or to
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. EdgeList getEdgesByGenusTypeForSourceNode(Id sourceNodeId, Type edgeGenusType) throws OperationFailedException, PermissionDeniedException
EdgeList
corresponding to the given source node
Id
and edge genus Type
and includes any
genus types derived from the given genus type.
In plenary mode, the returned list contains all of the edges
corresponding to the given peer, including duplicates, or an error
results if an edge is inaccessible. Otherwise, inaccessible
Edges
may be omitted from the list and may present the
elements in any order including returning a unique set.
In effective mode, edges are returned that are currently effective. In
any effective mode, effective edges and those currently expired are
returned.sourceNodeId
- a node Id
edgeGenusType
- an edge genus typeNullArgumentException
- sourceNodeId
or
edgeGenusType
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. EdgeList getEdgesByGenusTypeForSourceNodeOnDate(Id nodeId, Type edgeGenusType, DateTime from, DateTime to) throws OperationFailedException, PermissionDeniedException
EdgeList
with the given genus type and
effective during the entire given date range inclusive but not
confined to the date range.
In plenary mode, the returned list contains all known
edges or an error results. Otherwise, the returned list may contain
only those edges that are accessible through this session.
In effective mode, edges are returned that are currently effective. In
any effective mode, effective edges and those currently expired are
returned.nodeId
- a node Id
edgeGenusType
- an edge genus typefrom
- starting dateto
- ending dateInvalidArgumentException
- from
is
greater than to
NullArgumentException
- sourceNodeId,
edgeGenusType, from
or to
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. EdgeList getEdgesForDestinationNode(Id destinationNodeId) throws OperationFailedException, PermissionDeniedException
EdgeList
corresponding to the given destination
node Id.
In plenary mode, the returned list contains all of the
edges corresponding to the given peer, including duplicates, or an
error results if an edge is inaccessible. Otherwise, inaccessible
Edges
may be omitted from the list and may present the
elements in any order including returning a unique set.
In effective mode, edges are returned that are currently effective. In
any effective mode, effective edges and those currently expired are
returned.destinationNodeId
- a node Id
NullArgumentException
- destinationNodeId
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. EdgeList getEdgesForDestinationNodeOnDate(Id destinationNodeId, DateTime from, DateTime to) throws OperationFailedException, PermissionDeniedException
EdgeList
effective during the entire given date
range inclusive but not confined to the date range.
In plenary mode, the returned list contains all known
edges or an error results. Otherwise, the returned list may contain
only those edges that are accessible through this session.
In effective mode, edges are returned that are currently effective. In
any effective mode, effective edges and those currently expired are
returned.destinationNodeId
- a node Id
from
- starting dateto
- ending dateInvalidArgumentException
- from
is
greater than to
NullArgumentException
- destinationNodeId, from
or to
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. EdgeList getEdgesByGenusTypeForDestinationNode(Id destinationNodeId, Type edgeGenusType) throws OperationFailedException, PermissionDeniedException
EdgeList
corresponding to the given destination
node Id
and edge genus Type
and includes
any genus types derived from the given genus type.
In plenary mode, the returned list contains all of the edges
corresponding to the given peer, including duplicates, or an error
results if an edge is inaccessible. Otherwise, inaccessible
Edges
may be omitted from the list and may present the
elements in any order including returning a unique set.
In effective mode, edges are returned that are currently effective. In
any effective mode, effective edges and those currently expired are
returned.destinationNodeId
- a node Id
edgeGenusType
- an edge genus typeNullArgumentException
- destinationNodeId
or edgeGenusType
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. EdgeList getEdgesByGenusTypeForDestinationNodeOnDate(Id destinationNodeId, Type edgeGenusType, DateTime from, DateTime to) throws OperationFailedException, PermissionDeniedException
EdgeList
with the given genus type and
effective during the entire given date range inclusive but not
confined to the date range.
In plenary mode, the returned list contains all known
edges or an error results. Otherwise, the returned list may contain
only those edges that are accessible through this session.
In effective mode, edges are returned that are currently effective. In
any effective mode, effective edges and those currently expired are
returned.destinationNodeId
- a node Id
edgeGenusType
- an edge genus typefrom
- starting dateto
- ending dateInvalidArgumentException
- from
is
greater than to
NullArgumentException
- destinationNodeId,
edgeGenusType, from
or to
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. EdgeList getEdgesForNodes(Id sourceNodeId, Id destinationNodeId) throws OperationFailedException, PermissionDeniedException
Ids.
In plenary mode, the returned list contains all of the
edges corresponding to the given peer, including duplicates, or an
error results if an edge is inaccessible. Otherwise, inaccessible
Edges
may be omitted from the list and may present the
elements in any order including returning a unique set.
In effective mode, edges are returned that are currently effective. In
any effective mode, effective edges and those currently expired are
returned.sourceNodeId
- a node Id
destinationNodeId
- a node Id
NullArgumentException
- sourceNodeId
or
destinationNodeId
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. EdgeList getEdgesForNodesOnDate(Id sourceNodeId, Id destinationNodeId, DateTime from, DateTime to) throws OperationFailedException, PermissionDeniedException
EdgeList
effective during the entire given date
range inclusive but not confined to the date range.
In plenary mode, the returned list contains all known
edges or an error results. Otherwise, the returned list may contain
only those edges that are accessible through this session.
In effective mode, edges are returned that are currently effective. In
any effective mode, effective edges and those currently expired are
returned.sourceNodeId
- a node Id
destinationNodeId
- a node Id
from
- starting dateto
- ending dateInvalidArgumentException
- from
is
greater than to
NullArgumentException
- sourceNodeId,
destinationNodeId, from
or to
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. EdgeList getEdgesByGenusTypeForNodes(Id sourceNodeId, Id destinationNodeId, Type edgeGenusType) throws OperationFailedException, PermissionDeniedException
Ids
and edge genus type and includes and genus types derived from the
given genus type.
In plenary mode, the returned list contains all of the
edges corresponding to the given peer, including duplicates, or an
error results if an edge is inaccessible. Otherwise, inaccessible
Edges
may be omitted from the list and may present the
elements in any order including returning a unique set.
In effective mode, edges are returned that are currently effective. In
any effective mode, effective edges and those currently expired are
returned.sourceNodeId
- a node Id
destinationNodeId
- a node Id
edgeGenusType
- an edge genus typeNullArgumentException
- sourceNodeId,
destinationNodeId,
or edgeGenusType
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. EdgeList getEdgesByGenusTypeForNodesOnDate(Id sourceNodeId, Id destinationNodeId, Type edgeGenusType, DateTime from, DateTime to) throws OperationFailedException, PermissionDeniedException
EdgeList
of the given genus type effective
during the entire given date range inclusive but not confined to the
date range.
In plenary mode, the returned list contains all known
edges or an error results. Otherwise, the returned list may contain
only those edges that are accessible through this session.
In effective mode, edges are returned that are currently effective. In
any effective mode, effective edges and those currently expired are
returned.sourceNodeId
- a node Id
destinationNodeId
- a node Id
edgeGenusType
- an edge genus typefrom
- starting dateto
- ending dateInvalidArgumentException
- from
is
greater than to
NullArgumentException
- sourceNodeId,
destinationNodeId, edgeGenusType, from
or to
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. EdgeList getEdges() throws OperationFailedException, PermissionDeniedException
Edges.
In plenary mode, the returned list contains all known edges or an
error results. Otherwise, the returned list may contain only those
edges that are accessible through this session.
In effective mode, edges are returned that are currently effective. In
any effective mode, effective edges and those currently expired are
returned. Edges
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented.