Interface EdgeQuerySession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession
All Known Subinterfaces:
EdgeSearchSession

public interface EdgeQuerySession extends OsidSession

This session provides methods for searching among Edge objects. The search query is constructed using the EdgeQuery.

This session defines views that offer differing behaviors for searching.

  • federated graph view: searches include edges in graphs of which this graph is an ancestor in the graph hierarchy
  • isolated graph view: searches are restricted to edges in this graph

Edges may have a query record indicated by their respective record types. The query record is accessed via the EdgeQuery.

  • Method Details

    • getGraphId

      Id getGraphId()
      Gets the Graph Id associated with this session.
      Returns:
      the Graph Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getGraph

      Gets the Graph associated with this session.
      Returns:
      the graph
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • canSearchEdges

      boolean canSearchEdges()
      Tests if this user can perform 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 not offer lookup operations to unauthorized users.
      Returns:
      false if search methods are not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • useFederatedGraphView

      void useFederatedGraphView()
      Federates the view for methods in this session. A federated view will include edges in graphs which are children of this graph in the graph hierarchy.
      Compliance:
      mandatory - This method is must be implemented.
    • useIsolatedGraphView

      void useIsolatedGraphView()
      Isolates the view for methods in this session. An isolated view restricts lookups to this graph only.
      Compliance:
      mandatory - This method is must be implemented.
    • getEdgeQuery

      EdgeQuery getEdgeQuery()
      Gets an edge query.
      Returns:
      the edge query
      Compliance:
      mandatory - This method must be implemented.
    • getEdgesByQuery

      Gets a list of Edges matching the given edge query.
      Parameters:
      edgeQuery - the edge query
      Returns:
      the returned EdgeList
      Throws:
      NullArgumentException - edgeQuery is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      UnsupportedException - edgeQuery is not of this service
      Compliance:
      mandatory - This method must be implemented.