Interface OfferingConstrainerEnablerCatalogueAssignmentSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface OfferingConstrainerEnablerCatalogueAssignmentSession extends OsidSession

This session provides methods to re-assign OfferingConstrainerEnabler to Catalogue mappings. An OfferingConstrainerEnabler may appear in multiple Catalogue objects and removing the last reference to an OfferingConstrainerEnabler is the equivalent of deleting it. Each Catalogue may have its own authorizations governing who is allowed to operate on it.

Adding a reference of an OfferingConstrainerEnabler to another Catalogue is not a copy operation (eg: does not change its Id ).

  • Method Details

    • canAssignOfferingConstrainerEnablers

      boolean canAssignOfferingConstrainerEnablers()
      Tests if this user can alter offering constrainer enabler/catalogue mappings. A return of true does not guarantee successful authorization. A return of false indicates that it is known mapping 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 mapping is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • canAssignOfferingConstrainerEnablersToCatalogue

      boolean canAssignOfferingConstrainerEnablersToCatalogue(Id catalogueId)
      Tests if this user can alter offering constrainer enabler/catalogue mappings. A return of true does not guarantee successful authorization. A return of false indicates that it is known mapping 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.
      Parameters:
      catalogueId - the Id of the Catalogue
      Returns:
      false if mapping is not authorized, true otherwise
      Throws:
      NullArgumentException - catalogueId is null
      Compliance:
      mandatory - This method must be implemented.
    • getAssignableCatalogueIds

      IdList getAssignableCatalogueIds(Id catalogueId) throws OperationFailedException
      Gets a list of catalogues including and under the given catalogue node in which any offering constrainer enabler can be assigned.
      Parameters:
      catalogueId - the Id of the Catalogue
      Returns:
      list of assignable catalogue Ids
      Throws:
      NullArgumentException - catalogueId is null
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • getAssignableCatalogueIdsForOfferingConstrainerEnabler

      IdList getAssignableCatalogueIdsForOfferingConstrainerEnabler(Id catalogueId, Id offeringConstrainerEnablerId) throws OperationFailedException
      Gets a list of catalogues including and under the given catalogue node in which a specific offering constrainer enabler can be assigned.
      Parameters:
      catalogueId - the Id of the Catalogue
      offeringConstrainerEnablerId - the Id of the OfferingConstrainerEnabler
      Returns:
      list of assignable catalogue Ids
      Throws:
      NullArgumentException - catalogueId or offeringConstrainerEnablerId is null
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • assignOfferingConstrainerEnablerToCatalogue

      void assignOfferingConstrainerEnablerToCatalogue(Id offeringConstrainerEnablerId, Id catalogueId) throws AlreadyExistsException, NotFoundException, OperationFailedException, PermissionDeniedException
      Adds an existing OfferingConstrainerEnabler to a Catalogue .
      Parameters:
      offeringConstrainerEnablerId - the Id of the OfferingConstrainerEnabler
      catalogueId - the Id of the Catalogue
      Throws:
      AlreadyExistsException - offeringConstrainerEnablerId already assigned to catalogueId
      NotFoundException - offeringConstrainerEnablerId or catalogueId not found
      NullArgumentException - offeringConstrainerEnablerId or catalogueId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • unassignOfferingConstrainerEnablerFromCatalogue

      void unassignOfferingConstrainerEnablerFromCatalogue(Id offeringConstrainerEnablerId, Id catalogueId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Removes an OfferingConstrainerEnabler from a Catalogue .
      Parameters:
      offeringConstrainerEnablerId - the Id of the OfferingConstrainerEnabler
      catalogueId - the Id of the Catalogue
      Throws:
      NotFoundException - offeringConstrainerEnablerId or catalogueId not found or offeringConstrainerEnablerId already assigned to catalogueId
      NullArgumentException - offeringConstrainerEnablerId or catalogueId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • reassignOfferingConstrainerEnablerToCatalogue

      void reassignOfferingConstrainerEnablerToCatalogue(Id offeringConstrainerEnablerId, Id fromCatalogueId, Id toCatalogueId) throws AlreadyExistsException, NotFoundException, OperationFailedException, PermissionDeniedException
      Moves an OfferingConstrainerEnabler from one Catalogue to another. Mappings to other Catalogues are unaffected.
      Parameters:
      offeringConstrainerEnablerId - the Id of the OfferingConstrainerEnabler
      fromCatalogueId - the Id of the current Catalogue
      toCatalogueId - the Id of the destination Catalogue
      Throws:
      AlreadyExistsException - offeringConstrainerEnablerId already assigned to toCatalogueId
      NotFoundException - offeringConstrainerEnablerId, fromCatalogueId , or toCatalogueId not found or offeringConstrainerEnablerId , not mapped to fromCatalogueId
      NullArgumentException - offeringConstrainerEnablerId, fromCatalogueId , or toCatalogueId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.