Interface CatalogEnablerRuleLookupSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface CatalogEnablerRuleLookupSession extends OsidSession

This session provides methods to retrieve CatalogEnabler to Catalog mappings. A Catalog with multiple CatalogEnablers means any positive rule evaluation across the enablers result in an enabled Catalog .

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

    • getCatalogId

      Id getCatalogId()
      Gets the Catalog Id associated with this session.
      Returns:
      the Catalog Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getCatalog

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

      boolean canLookupCatalogEnablerRules()
      Tests if this user can perform lookups of catalog enabler/catalog 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.
    • useComparativeCatalogEnablerRuleView

      void useComparativeCatalogEnablerRuleView()
      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.
    • usePlenaryCatalogEnablerRuleView

      void usePlenaryCatalogEnablerRuleView()
      A complete view of the CatalogEnabler and Catalog 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.
    • useFederatedCatalogView

      void useFederatedCatalogView()
      Federates the view for methods in this session. A federated view will include catalog enablers in catalogs which are children of this catalog in the catalog hierarchy.
      Compliance:
      mandatory - This method is must be implemented.
    • useIsolatedCatalogView

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

      IdList getCatalogEnablerIdsForCatalog(Id catalogId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the CatalogEnabler Id associated with a Catalog .
      Parameters:
      catalogId - Id of the Catalog
      Returns:
      the catalog enabler Ids
      Throws:
      NotFoundException - catalogId is not found
      NullArgumentException - catalogId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getCatalogEnablersForCatalog

      Gets the CatalogEnabler associated with a Catalog .
      Parameters:
      catalogId - Id of the Catalog
      Returns:
      the catalog enablers
      Throws:
      NotFoundException - catalogId is not found
      NullArgumentException - catalogId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getCatalogIdsForCatalogEnabler

      IdList getCatalogIdsForCatalogEnabler(Id catalogEnablerId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the Catalog Ids mapped to a CatalogEnabler .
      Parameters:
      catalogEnablerId - Id of a CatalogEnabler
      Returns:
      list of catalog Ids
      Throws:
      NotFoundException - catalogEnablerId is not found
      NullArgumentException - catalogEnablerId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getCatalogsForCatalogEnabler

      CatalogList getCatalogsForCatalogEnabler(Id catalogEnablerId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the Catalogs mapped to a CatalogEnabler .
      Parameters:
      catalogEnablerId - Id of a CatalogEnabler
      Returns:
      list of catalogs
      Throws:
      NotFoundException - catalogEnablerId is not found
      NullArgumentException - catalogEnablerId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.