Interface TodoQuerySession

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

public interface TodoQuerySession extends OsidSession

This session provides methods for searching Todos . The search query is constructed using the TodoQuery . The todo record Type also specifies the record for the todo query.

This session defines views that offer differing behaviors for searching.

  • isolated checklist view: All todo methods in this session operate, retrieve and pertain to todos defined explicitly in the current checklist. Using an isolated view is useful for managing todos with the TodoAdminSession.
  • federated checklist view: All todo lookup methods in this session operate, retrieve and pertain to all todos defined in this checklist and any other checklists implicitly available in this checklist through checklist inheritence.
  • sequestered todo viiew: All event methods suppress sequestered todos.
  • unsequestered todo view: All event methods return all todos.

Todos may have a query record indicated by their respective record types. The query record is accessed via the TodoQuery . The returns in this session may not be cast directly to these interfaces.

  • Method Details

    • getChecklistId

      Id getChecklistId()
      Gets the Checklist Id associated with this session.
      Returns:
      the Checklist Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getChecklist

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

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

      void useFederatedChecklistView()
      Federates the view for methods in this session. A federated view will include todos in checklists which are children of this checklist in the checklist hierarchy.
      Compliance:
      mandatory - This method is must be implemented.
    • useIsolatedChecklistView

      void useIsolatedChecklistView()
      Isolates the view for methods in this session. An isolated view restricts searches to this checklist only.
      Compliance:
      mandatory - This method is must be implemented.
    • useSequesteredTodoView

      void useSequesteredTodoView()
      The returns from the search methods omit sequestered todos.
      Compliance:
      mandatory - This method is must be implemented.
    • useUnsequesteredTodoView

      void useUnsequesteredTodoView()
      All todos are returned including sequestered todos.
      Compliance:
      mandatory - This method is must be implemented.
    • getTodoQuery

      TodoQuery getTodoQuery()
      Gets a todo query.
      Returns:
      the todo query
      Compliance:
      mandatory - This method must be implemented.
    • getTodosByQuery

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