OSID Logo
OSID Specifications
topology package
Version 3.0.0
Release Candidate Preview
Interfaceosid.topology.NodeLookupSession
Implementsosid.OsidSession
Description

This session defines methods for retrieving nodes.

This lookup session defines several views:

  • comparative view: elements may be silently omitted or re-ordered
  • plenary view: provides a complete result set or is an error condition
  • isolated graph view: All node methods in this session operate, retrieve and pertain to nodes defined explicitly in the current graph. Using an isolated view is useful for managing Nodes with the NodeAdminSession.
  • federated graph view: All node lookup methods in this session operate, retrieve and pertain to all nodes defined in this graph and any other nodes implicitly available in this graph through repository inheritence.

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.

MethodgetGraphId
Description

Gets the Graph Id associated with this session.

Returnosid.id.Idthe Graph Id associated with this session
CompliancemandatoryThis method must be implemented.
MethodgetGraph
Description

Gets the Graph associated with this session.

Returnosid.topology.Graphthe graph
ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodcanLookupNodes
Description

Tests if this user can perform 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.

Returnboolean false if lookup methods are not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethoduseComparativeNodeView
Description

The returns from the lookup methods may omit or translate elements based on this session, such as authorization, and not result in an error. This view is used when greater interoperability is desired at the expense of precision.

CompliancemandatoryThis method is must be implemented.
MethodusePlenaryNodeView
Description

A complete view of the 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.

CompliancemandatoryThis method is must be implemented.
MethoduseFederatedGraphView
Description

Federates the view for methods in this session. A federated view will include nodes in graphs which are children of this graph in the graph hierarchy.

CompliancemandatoryThis method is must be implemented.
MethoduseIsolatedGraphView
Description

Isolates the view for methods in this session. An isolated view restricts retrievals to this graph only.

CompliancemandatoryThis method is must be implemented.
MethodgetNode
Description

Gets the 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.

Parametersosid.id.IdnodeIdthe Id of the Node to retrieve
Returnosid.topology.Nodethe returned Node
ErrorsNOT_FOUNDno Node found with the given Id
NULL_ARGUMENT nodeId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetNodesByIds
Description

Gets a 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.

Parametersosid.id.IdListnodeIdsthe list of Ids to retrieve
Returnosid.topology.NodeListthe returned Node list
ErrorsNOT_FOUNDan Id was not found
NULL_ARGUMENT nodeIds is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetNodesByGenusType
Description

Gets a 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.

Parametersosid.type.TypenodeGenusTypea node genus type
Returnosid.topology.NodeListthe returned Node list
ErrorsNULL_ARGUMENT nodeGenusType is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetNodesByParentGenusType
Description

Gets a 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.

Parametersosid.type.TypenodeGenusTypea node genus type
Returnosid.topology.NodeListthe returned Node list
ErrorsNULL_ARGUMENT nodeGenusType is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetNodesByRecordType
Description

Gets a 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.

Parametersosid.type.TypenodeRecordTypea node record type
Returnosid.topology.NodeListthe returned Node list
ErrorsNULL_ARGUMENT nodeRecordType is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetNodes
Description

Gets all 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.

Returnosid.topology.NodeLista list of Nodes
ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.