Interface BallotConstrainerRuleLookupSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface BallotConstrainerRuleLookupSession extends OsidSession

This session provides methods to retrieve BallotConstrainer to Ballot mappings. A Ballot with multiple BallotConstrainers means any positive rule evaluation across the constrainers result in an accessible Ballot .

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 polls view: All methods in this session operate, retrieve and pertain ballot constrainer defined explicitly in the current polls
  • federated polls view: All methods in this session operate, retrieve and pertain to all ballot constrainer defined in this polls and any other ballot constrainer implicitly available in this polls through polls inheritence.
  • Method Details

    • getPollsId

      Id getPollsId()
      Gets the Polls Id associated with this session.
      Returns:
      the Polls Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getPolls

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

      boolean canLookupBallotConstrainerRules()
      Tests if this user can perform lookups of ballot constrainer/ballot mappings. A return of true does not guarantee successful authorization. A return of false indicates that it is known lookup 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 looking up mappings is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • useComparativeBallotConstrainerRuleView

      void useComparativeBallotConstrainerRuleView()
      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.
    • usePlenaryBallotConstrainerRuleView

      void usePlenaryBallotConstrainerRuleView()
      A complete view of the BallotConstrainer and Ballot 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.
    • useFederatedPollsView

      void useFederatedPollsView()
      Federates the view for methods in this session. A federated view will include ballot constrainer in polls which are children of this polls in the polls hierarchy.
      Compliance:
      mandatory - This method is must be implemented.
    • useIsolatedPollsView

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

      IdList getBallotConstrainerIdsForBallot(Id ballotId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the BallotConstrainer Id associated with a Ballot .
      Parameters:
      ballotId - Id of the Ballot
      Returns:
      the ballot constrainer Ids
      Throws:
      NotFoundException - ballotId is not found
      NullArgumentException - ballotId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getBallotConstrainersForBallot

      Gets the BallotConstrainer associated with a Ballot .
      Parameters:
      ballotId - Id of the Ballot
      Returns:
      the ballot constrainers
      Throws:
      NotFoundException - ballotId is not found
      NullArgumentException - ballotId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getBallotIdsForBallotConstrainer

      IdList getBallotIdsForBallotConstrainer(Id ballotConstrainerId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the Ballot Ids mapped to a BallotConstrainer .
      Parameters:
      ballotConstrainerId - Id of a BallotConstrainer
      Returns:
      list of ballot Ids
      Throws:
      NotFoundException - ballotConstrainerId is not found
      NullArgumentException - ballotConstrainerId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getBallotsForBallotConstrainer

      BallotList getBallotsForBallotConstrainer(Id ballotConstrainerId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the Ballots mapped to a BallotConstrainer .
      Parameters:
      ballotConstrainerId - Id of a BallotConstrainer
      Returns:
      list of ballots
      Throws:
      NotFoundException - ballotConstrainerId is not found
      NullArgumentException - ballotConstrainerId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.