Interface ChainQuerySession

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

public interface ChainQuerySession extends OsidSession

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

This session defines views that offer differing behaviors for searching.

  • federated antimatroid view: searches include chains in antimatroids of which this antimatroid is an ancestor in the antimatroid hierarchy
  • isolated antimatroid view: searches are restricted to chains in this antimatroid

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

  • Method Details

    • getAntimatroidId

      Id getAntimatroidId()
      Gets the Antimatroid Id associated with this session.
      Returns:
      the Antimatroid Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getAntimatroid

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

      boolean canSearchChains()
      Tests if this user can perform Chain 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.
    • useFederatedAntimatroidView

      void useFederatedAntimatroidView()
      Federates the view for methods in this session. A federated view will include chains in antimatroids which are children of this antimatroid in the antimatroid hierarchy.
      Compliance:
      mandatory - This method is must be implemented.
    • useIsolatedAntimatroidView

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

      ChainQuery getChainQuery()
      Gets a chain query.
      Returns:
      the chain query
      Compliance:
      mandatory - This method must be implemented.
    • getChainsByQuery

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