Interface OfferingConstrainerEnablerRuleApplicationSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface OfferingConstrainerEnablerRuleApplicationSession extends OsidSession

This session provides methods to apply OfferingConstrainerEnablers to OfferingConstrainers. An OfferingConstrainer with multiple OfferingConstrainerEnablers means any positive rule evaluation across the enablers result in an effective OfferingConstrainer.

  • Method Details

    • getCatalogueId

      Id getCatalogueId()
      Gets the Catalogue Id associated with this session.
      Returns:
      the Catalogue Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getCatalogue

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

      boolean canAssignOfferingConstrainerEnablers()
      Tests if this user can alter offering constrainer enabler/offering constrainer 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.
    • assignOfferingConstrainerEnablerToOfferingConstrainer

      void assignOfferingConstrainerEnablerToOfferingConstrainer(Id offeringConstrainerEnablerId, Id offeringConstrainerId) throws AlreadyExistsException, NotFoundException, OperationFailedException, PermissionDeniedException
      Adds an existing OfferingConstrainerEnabler to an OfferingConstrainer.
      Parameters:
      offeringConstrainerEnablerId - the Id of the OfferingConstrainerEnabler
      offeringConstrainerId - the Id of the OfferingConstrainer
      Throws:
      AlreadyExistsException - offeringConstrainerEnablerId already applied to offeringConstrainerId
      NotFoundException - offeringConstrainerEnablerId or offeringConstrainerId not found
      NullArgumentException - offeringConstrainerEnablerId or offeringConstrainerId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • unassignOfferingConstrainerEnablerFromOfferingConstrainer

      void unassignOfferingConstrainerEnablerFromOfferingConstrainer(Id offeringConstrainerEnablerId, Id offeringConstrainerId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Removes an OfferingConstrainerEnabler from an OfferingConstrainer.
      Parameters:
      offeringConstrainerEnablerId - the Id of the OfferingConstrainerEnabler
      offeringConstrainerId - the Id of the OfferingConstrainer
      Throws:
      NotFoundException - offeringConstrainerEnablerId or offeringConstrainerId not found or offeringConstrainerEnablerId not applied to offeringConstrainerId
      NullArgumentException - offeringConstrainerEnablerId or offeringConstrainerId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • canSequenceOfferingConstrainerEnablers

      boolean canSequenceOfferingConstrainerEnablers()
      Tests if this user can order OfferingConstrainerEnablers. A return of true does not guarantee successful authorization. A return of false indicates that it is known sequencing operations will result in a PERMISSION_DENIED. This is intended as a hint to an application that may opt not to offer sequencing operations to an unauthorized user.
      Returns:
      false if OfferingConstrainerEnabler ordering is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • moveOfferingConstrainerEnablerAhead

      void moveOfferingConstrainerEnablerAhead(Id offeringConstrainerEnablerId, Id offeringConstrainerId, Id referenceId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Reorders offering constrainer enablers for an offering constrainer by moving the specified offering constrainer enabler in front of a reference offering constrainer enabler.
      Parameters:
      offeringConstrainerEnablerId - the Id of an OfferingConstrainerEnabler
      offeringConstrainerId - the Id of an OfferingConstrainer
      referenceId - the reference offering constrainer enabler Id
      Throws:
      NotFoundException - offeringConstrainerEnablerId, offeringConstrainerId, or referenceId not found or, offeringConstrainerEnablerId or referenceId not related to offeringConstrainerId
      NullArgumentException - offeringConstrainerEnablerId, offeringConstrainerId, or referenceId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • moveOfferingConstrainerEnablerBehind

      void moveOfferingConstrainerEnablerBehind(Id offeringConstrainerEnablerId, Id offeringConstrainerId, Id referenceId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Reorders offering constrainer enablers for a canonical unit by moving the specified offering constrainer enabler behind a reference offering constrainer enabler.
      Parameters:
      offeringConstrainerEnablerId - the Id of an OfferingConstrainerEnabler
      offeringConstrainerId - the Id of an OfferingConstrainer
      referenceId - the reference offering constrainer enabler Id
      Throws:
      NotFoundException - offeringConstrainerEnablerId, offeringConstrainerId, or referenceId not found or, offeringConstrainerEnablerId or referenceId not related to offeringConstrainerId
      NullArgumentException - offeringConstrainerEnablerId, offeringConstrainerId, or referenceId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • orderOfferingConstrainerEnablers

      void orderOfferingConstrainerEnablers(Id[] offeringConstrainerEnablerIds, Id offeringConstrainerId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Reorders a set of offering constrainer enablers for an offering constrainer.
      Parameters:
      offeringConstrainerEnablerIds - the Ids for a set of OfferingConstrainerEnablers
      offeringConstrainerId - the Id of an OfferingConstrainer
      Throws:
      NotFoundException - canonicalUnitConstraienrId not found or, an offeringConstrainerEnablerId not related to offeringConstrainerId
      NullArgumentException - offeringConstrainerEnablerIds or offeringConstrainerId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.