Interface PollsLookupSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface PollsLookupSession extends OsidSession

This session provides methods for retrieving Polls objects. The Polls represents a collection races, ballots, candidates, and votes.

This session defines views that offer differing behaviors when retrieving multiple objects.

  • comparative view: elements may be silently omitted or re-ordered
  • plenary view: provides a complete set or is an error condition

Generally, the comparative view should be used for most applications as it permits operation even if there is data that cannot be accessed. For example, a browsing application may only need to examine the Polls it can access, without breaking execution. However, an administrative application may require all Polls elements to be available.

Polls may have an additional records indicated by their respective record types. The record may not be accessed through a cast of the Polls .

  • Method Details

    • canLookupPolls

      boolean canLookupPolls()
      Tests if this user can perform Polls 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.
      Returns:
      false if lookup methods are not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • useComparativePollsView

      void useComparativePollsView()
      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.
      Compliance:
      mandatory - This method is must be implemented.
    • usePlenaryPollsView

      void usePlenaryPollsView()
      A complete view of the Polls 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.
      Compliance:
      mandatory - This method is must be implemented.
    • getPolls

      Gets the Polls specified by its Id . In plenary mode, the exact Id is found or a NOT_FOUND results. Otherwise, the returned Polls may have a different Id than requested, such as the case where a duplicate Id was assigned to a Polls and retained for compatibility.
      Parameters:
      pollsId - Id of the Polls
      Returns:
      the polls
      Throws:
      NotFoundException - pollsId not found
      NullArgumentException - pollsId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method is must be implemented.
    • getPollsByIds

      Gets a PollsList corresponding to the given IdList . In plenary mode, the returned list contains all of the polls 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 Polls may be omitted from the list and may present the elements in any order including returning a unique set.
      Parameters:
      pollsIds - the list of Ids to retrieve
      Returns:
      the returned Polls list
      Throws:
      NotFoundException - an Id was not found
      NullArgumentException - pollsIds is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getPollsByGenusType

      PollsList getPollsByGenusType(Type pollsGenusType) throws OperationFailedException, PermissionDeniedException
      Gets a PollsList corresponding to the given polls genus Type which does not include polls of types derived from the specified Type . In plenary mode, the returned list contains all known polls or an error results. Otherwise, the returned list may contain only those polls that are accessible through this session.
      Parameters:
      pollsGenusType - a polls genus type
      Returns:
      the returned Polls list
      Throws:
      NullArgumentException - pollsGenusType is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getPollsByParentGenusType

      PollsList getPollsByParentGenusType(Type pollsGenusType) throws OperationFailedException, PermissionDeniedException
      Gets a PollsList corresponding to the given polls genus Type and include any additional polls with genus types derived from the specified Type . In plenary mode, the returned list contains all known polls or an error results. Otherwise, the returned list may contain only those polls that are accessible through this session.
      Parameters:
      pollsGenusType - a polls genus type
      Returns:
      the returned Polls list
      Throws:
      NullArgumentException - pollsGenusType is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getPollsByRecordType

      PollsList getPollsByRecordType(Type pollsRecordType) throws OperationFailedException, PermissionDeniedException
      Gets a PollsList containing the given polls record Type . In plenary mode, the returned list contains all known polls or an error results. Otherwise, the returned list may contain only those polls that are accessible through this session.
      Parameters:
      pollsRecordType - a polls interface type
      Returns:
      the returned Polls list
      Throws:
      NullArgumentException - pollsRecordType is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getPollsByProvider

      PollsList getPollsByProvider(Id resourceId) throws OperationFailedException, PermissionDeniedException
      Gets a PollsList for the given provider. In plenary mode, the returned list contains all known polls or an error results. Otherwise, the returned list may contain only those polls that are accessible through this session.
      Parameters:
      resourceId - a resource Id
      Returns:
      the returned Polls list
      Throws:
      NullArgumentException - resourceId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getAllPolls

      Gets all Polls . In plenary mode, the returned list contains all known polls or an error results. Otherwise, the returned list may contain only those polls that are accessible through this session.
      Returns:
      a list of Polls
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.