Interface DemographicEnablerRuleLookupSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface DemographicEnablerRuleLookupSession extends OsidSession

This session provides methods to retrieve DemographicEnabler to Demographic mappings. A Demographic with multiple DemographicEnablers means any positive rule evaluation across the enablers result in an effective Demographic .

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

    • getBinId

      Id getBinId()
      Gets the Bin Id associated with this session.
      Returns:
      the Bin Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getBin

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

      boolean canLookupDemographicEnablerRules()
      Tests if this user can perform lookups of demographic enabler/demographic 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.
    • useComparativeDemographicEnablerRuleView

      void useComparativeDemographicEnablerRuleView()
      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.
    • usePlenaryDemographicEnablerRuleView

      void usePlenaryDemographicEnablerRuleView()
      A complete view of the DemographicEnabler and Demographic 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.
    • useFederatedBinView

      void useFederatedBinView()
      Federates the view for methods in this session. A federated view will include demographic enablers in bins which are children of this bin in the bin hierarchy.
      Compliance:
      mandatory - This method is must be implemented.
    • useIsolatedBinView

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

      IdList getDemographicEnablerIdsForDemographic(Id demographicId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the DemographicEnabler Id associated with a Demographic .
      Parameters:
      demographicId - Id of the Demographic
      Returns:
      the demographic enabler Ids
      Throws:
      NotFoundException - demographicId is not found
      NullArgumentException - demographicId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getDemographicEnablersForDemographic

      DemographicEnablerList getDemographicEnablersForDemographic(Id demographicId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the DemographicEnabler associated with a Demographic .
      Parameters:
      demographicId - Id of the Demographic
      Returns:
      the demographic enablers
      Throws:
      NotFoundException - demographicId is not found
      NullArgumentException - demographicId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getDemographicIdsForDemographicEnabler

      IdList getDemographicIdsForDemographicEnabler(Id demographicEnablerId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the Demographic Ids mapped to a DemographicEnabler .
      Parameters:
      demographicEnablerId - Id of a DemographicEnabler
      Returns:
      list of demographic Ids
      Throws:
      NotFoundException - demographicEnablerId is not found
      NullArgumentException - demographicEnablerId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getDemographicsForDemographicEnabler

      DemographicList getDemographicsForDemographicEnabler(Id demographicEnablerId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the Demographics mapped to a DemographicEnabler .
      Parameters:
      demographicEnablerId - Id of a DemographicEnabler
      Returns:
      list of demographics
      Throws:
      NotFoundException - demographicEnablerId is not found
      NullArgumentException - demographicEnablerId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.